+ -
当前位置:首页 → 问答吧 → 脚本生成脚本的一个错误

脚本生成脚本的一个错误

时间:2011-12-11

来源:互联网

程序目的是测试函数返回值,源码如下:
function verify
{
if [ $# -ne 2 ]
then return 1
else if [ $1 -eq Bob ] && [ $2 -eq 555 ]
then return 0
else return 2;echo "Rejected"
fi
fi
}
verify Bob 555
case $? in
do
0) echo "Verified"
;;
1) echo "Wrong number of arguments"
;;
2) echo "Rejected"
;;
done

./return: 第 5 行: [: Bob: 期待整数表达式
./return: 行 13: 未预期的符号 `newline' 附近有语法错误
./return: 行 13: `do'

作者: 潇潇暮雨sunny   发布时间: 2011-12-11

字串比较用“==”
case语句没有do、done的,结尾用esac
你还是在网上找一本《高级Bash Shell脚本编程》看看吧,中文的,电子版很多的

作者: sunfish   发布时间: 2011-12-11

看来这本2001年的书果真不行啊,这么多错误。感谢楼上的排错的建议

作者: 潇潇暮雨sunny   发布时间: 2011-12-11