LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 806|回复: 2

这个简单的shell有什么错误?

[复制链接]
发表于 2007-1-19 16:44:15 | 显示全部楼层 |阅读模式
文件名:nnn
if [ "$#" -ne 1 ]             //看参数是否不是一个,如果是,就提示错误,退出状态设为1
then
        echo "错误"
        exit 1
fi
case "$1"                       //如果上面的参数对了,看参数是0 就输出 zero;
        in
        0) echo zero;;
esac

我 chmod +x nnn
然后
./nnn 0
能够正确输出zero

./nnn 2
他为什么不输出 “错误”
????
如下面所示:
[root@linux shell]# ./nnn 0
zero
[root@linux shell]# ./nnn 2
[root@linux shell]#
发表于 2007-1-19 17:08:11 | 显示全部楼层
2 或者 0 没区别 $#看来都是一个参数

所以不输出错误
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-1-22 17:30:15 | 显示全部楼层
davi兄弟正解!
我改为这样就能输出错误信息了
if [ "$#" -ne 1 ]
then
echo "错误"
exit 1
fi
case "$1"
in
0) echo zero;;
*) echo "错误";;
esac
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表