![在简单的 Bash 脚本中实现 if 子句](https://linux22.com/image/978357/%E5%9C%A8%E7%AE%80%E5%8D%95%E7%9A%84%20Bash%20%E8%84%9A%E6%9C%AC%E4%B8%AD%E5%AE%9E%E7%8E%B0%20if%20%E5%AD%90%E5%8F%A5.png)
我有一个使用 cal -m $v
where v
is number 的 bash 脚本。v
在执行开始时,系统会提示用户输入 的值。如果用户按下ENTER
而不是输入数字,我希望脚本输出当前月份的天数,即执行 justcal
而不是 cal -m $v
。有什么想法吗?
答案1
我们可以做得更好,我们可以进行范围检查以确保它介于 1 到 12 之间(含 1 和 12)。有大约十亿种方法可以做到这一点,但这里只列举几种:
if [ "$v" -ge 1 -a "$v" -le 12 ]; then
cal -m "$v"
else
cal
fi
或者使用算术测试:
((v>=1 && v<=12)) && cal -m "$v" || cal