一.
if [ 10 -eq 10 && 10 -eq 10 ];
then
echo "is true."
else
echo "is false."
fi
以上命令报错
改成:
if [ 10 -eq 10 ] && [ 10 -eq 10 ];
then
echo "is true."
else
echo "is false."
fi
:
is true.
原因:因为单独运行10 -eq 10 会提示这个命令是找不到的,所以10 -eq 10 要用[]括起来
二.
另外:逻辑运算符&&或者|| 连接两个表达式的时候,一个[ ]不可以,但是[[ ]]就可以,这是规定,别问为什么
if [ ls && ls ];
then
echo "is true."
else
echo "is false."
fi
以上语句也是会报错的
if [[ ls && ls ]];
then
echo "is true."
else
echo "is false."
fi
网友评论