代码:
if [ $mintemp -ge 15 && $maxtemp -le 28 ]; then echo "nice day"; fi
我在 [ 和 $Mintemp 、 28 和 ] 之间已经有空格
但错误仍然发生
答案1
&&
不是一个[]
参数(因为[
实际上是一个程序),它是 Bash 的运算符,用于在第一个命令成功时运行第二个命令。所以对于 bash 你的脚本看起来像:
if ([ $mintemp -ge 15) && ($maxtemp -le 28 ]; then echo "nice day"; fi)
这是无效的。但是你可以这样做:
if [ $mintemp -ge 15 ] && [ $maxtemp -le 28 ]; then echo "nice day"; fi