-1
如何防止在以下代码中运行*)
(与echo "Other"
)?案件陈述中断
我想当$a
等于18只是回声“A”。现在回声 “A” 和 “其他”
case "$a" in
[17-20])
echo "A"
;;
*) echo "Other"
;;
esac
如何防止在以下代码中运行*)
(与echo "Other"
)?案件陈述中断
我想当$a
等于18只是回声“A”。现在回声 “A” 和 “其他”
case "$a" in
[17-20])
echo "A"
;;
*) echo "Other"
;;
esac
您可以使用此:
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
case
不知道范围,只需要模式。
相反,您可以使用if ... else
。
if ((a>=17 && a<=20)); then
echo "A"
else
echo "Other"
fi
无法复制,因为 “A” 不打印。毫不奇怪,因为这不是字符范围的工作方式。 – 2014-12-07 09:03:24