shell 问题两则

来源:互联网 发布:上海汇软科技骗局知乎 编辑:程序博客网 时间:2024/05/29 18:04


问题1: bash:未预期的符号"then"附近有语法错误


if[$count -lt 40];then


把上面几个「囧」换成空格就好了。


问题2: 比较两个字符串是否相等的办法是:


if [ "$test"x = "test"x ]; then
这里的关键有几点:
1 使用单个等号
2 注意到等号两边各有一个空格:这是unix shell的要求
3 注意到"$test"x最后的x,这是特意安排的,因为当$test为空的时候,上面的表达式就变成了x = testx,显然是不相等的。而如果没有这个x,表达式就会报错:[: =: unary operator expected
原创粉丝点击