求助,shall编程,,帮忙啊,编写一个shell脚本程序,它能根据输入的命令行参数采取不同的动作:

编写一个shell脚本程序,它能根据输入的命令行参数采取不同的动作:如果是目录,则列出该目录中的文件;如果是可执行的文件,则用shell执行之;如果是可读的文件,则分屏显... 编写一个shell脚本程序,它能根据输入的命令行参数采取不同的动作:如果是目录,则列出该目录中的文件;如果是可执行的文件,则用shell执行之;如果是可读的文件,则分屏显示其内容。 展开
 我来答
仵秋梵暖tT
2012-11-24 · TA获得超过134个赞
知道小有建树答主
回答量:117
采纳率:0%
帮助的人:104万
展开全部
楼主,你好!
貌似这个题目我见了好多次,是一本书的练习题吧

这次就写一个吧,其实遇到这种问题,希望大家都去学习下shell基础编程,不然,就算别人帮助了你,你看不懂怎么办?

#!/bin/bash
echo -n "请输入一个文件或目录名:"read Input
if [ -d $Input ]
then
ls $Input
elif [[ -f "$Input" && -r "$Input" ]]
then
more $Input
exit 1
else
echo "ERROR:输入的不是文件或目录名"
fi

希望采纳!
Winshining
2012-11-24 · TA获得超过460个赞
知道小有建树答主
回答量:202
采纳率:0%
帮助的人:207万
展开全部
#!/bin/bash

#首先定义两个错误码,一个是参数不够,一个是传入的参数代表的文件不存在
E_PARAM1=1
E_PARAM2=2
PATH=$(pwd)
if [[ $# -eq 0 ]]; then
echo "Usage: $0 parameter"
exit $E_PARAM1
fi
#可以输入多个参数,遇到不存在的文件就退出
for i in $@
do
if [[ ! -s $i ]]; then
echo "$i: no such file or directory"
exit $E_PARAM2
fi
if [[ -d $i ]]; then
/bin/ls $i
elif [[ -x $i ]]; then
${PATH}/$i
elif [[ -r $i ]]; then
/bin/more $i
else
echo "ignored"
fi
shift
done
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式