例如:
if $input = 'y'
原因
./test.sh: line 5: y: command not found
,
if [ $tmp = 'y' ]
不会导致错误?
不能求值条件的if语句的目的是什么?
if
不计算任何东西。它只是执行谓词程序并对其返回代码进行操作。[
实际上是一个执行少量条件并返回适当返回码的程序。
else
分支, [
可以与不带if的联机程序一起使用:
$ [ 1 -eq 2 ] && echo "foo"
# -> no output