1
在一个shell脚本,我写了下面几行脚本的执行过程中给了错误整数表达式有望测试或条件,如果其他的bash脚本
if [ p -eq 35 -o p -eq 70 ]; then
echo "Sleeping ....zzz ........zzzz......."
sleep 5
得到以下错误
/d2.sh: line 6: [: p: integer expression expected
在一个shell脚本,我写了下面几行脚本的执行过程中给了错误整数表达式有望测试或条件,如果其他的bash脚本
if [ p -eq 35 -o p -eq 70 ]; then
echo "Sleeping ....zzz ........zzzz......."
sleep 5
得到以下错误
/d2.sh: line 6: [: p: integer expression expected
你可能想$p
代替p
:
if [ $p -eq 35 -o $p -eq 70 ]; then
...
感谢您指出了这一点。 – 2012-01-12 12:34:51
只能在'((...))'算术表达式中使用不带'$'的变量名。 – choroba 2012-01-12 13:14:27
@ l0b0:不,'[[]]'仍然需要'$'来展开变量。 @choroba:注意你需要在'(())','012','<', '>','''等内部使用不同的运算符,而不是'-eq','-lt','-gt', '-o' ... – 2012-01-12 17:21:19