如何阻止在关注代码中运行*)
(echo "Other"
}?
我希望$a
等于18时只回显“A”。现在回显“A”和“其他”
case "$a" in
[17-20])
echo "A"
;;
*) echo "Other"
;;
esac
答案 0 :(得分:2)
您可以使用:
case "$a" in
1[789]) # range 17-19
echo "A"
;;
20) # only 20
echo "A"
;;
*)
echo "Other"
;;
esac
缩短版本:
case "$a" in
1[7-9]|20) # range 17-19 and 20
echo "A"
;;
*)
echo "Other"
;;
esac
答案 1 :(得分:1)
case
不了解范围,只接受模式。
相反,您可以使用if ... else
。
if ((a>=17 && a<=20)); then
echo "A"
else
echo "Other"
fi