![计数程序在算术测试中失败](https://linux22.com/image/62808/%E8%AE%A1%E6%95%B0%E7%A8%8B%E5%BA%8F%E5%9C%A8%E7%AE%97%E6%9C%AF%E6%B5%8B%E8%AF%95%E4%B8%AD%E5%A4%B1%E8%B4%A5.png)
这个相当基本的脚本有点问题。该脚本适用于我的 macbook pro 中的 Bash,但不适用于我的 Linux Mint 桌面,该桌面也使用 bash。
我不明白它出了什么问题。
我仍然收到 bash 的错误消息:
line 6: [: -lt: unary operator expected
line 16: [: -gt: unary operator expected
使用此更新的代码:
#!/bin/bash
clear
counter=0
function countup {
while [ $counter -lt 500 ]
do
((counter++))
echo $counter
sleep 0.2
done
countdown
}
function countdown {
while [ $counter -gt 0 ]
do
((counter--))
echo $counter
sleep 0.2
done
countup
}
countup
答案1
尝试这个:
#!/bin/bash
clear
counter=0
function countup {
while [[ $counter -lt 500 ]]; do
((counter++))
echo $counter
sleep 0.2
done
countdown
}
function countdown {
while [[ $counter -gt 0 ]]; do
((counter--))
echo $counter
sleep 0.2
done
countup
}
countup
[[ ]]
对于未赋值的变量更加稳健。但是,这个脚本确实运行了。看起来你在这里输入的内容与你的机器上输入的内容不同。这看起来也像是会永远向上和向下计数,但这似乎是故意的。