有人可以帮我弄清楚为什么这不起作用?

lol*_*ter 3 bash shell conditional

i=0

if [$i -eq 0]
then 
   echo "i is equal to 0"
else 
   echo "NOT EQUAL <><><><><><><><><><><><><><><><><><><>"
fi
Run Code Online (Sandbox Code Playgroud)

它是bash脚本的一部分,它总是需要else分支.我对bash完全不熟悉,所以它可能是愚蠢的

Mic*_*jer 5

你需要[ $i而不是[$i.

这是因为它[是一个内置命令,$i应该是它的第一个参数.如果您错过了命令和参数之间的空格,那么shell将查找[$i命令,并且在评估之后将告诉您没有[0要执行的命令.