我正在尝试做这样的事情:
case $level in
3)
echo "Level Three"
2)
echo "Level Two"
1)
echo "Level one"
;;
esac
如果$ level = 3,它将输出
Level Three
Level Two
Level One
而如果$ level = 1,则仅输出
Level One
但是当我尝试它时,syntax error near unexpected token ')'
由于没有包含,我得到了错误;;
。
我知道的所有其他语言都允许这样做,有没有办法在bash中做到这一点?某种关键字的含义是“现在继续进行下一种情况,就好像它匹配了”?
2
如果您知道的每种语言都允许这样做,则您需要学习C及其模仿程序以外的语言。案例陈述的失败是C语言中的历史性设计事故,在某种程度上,它可以用更原则的语言生存下来。
—
吉尔斯(Gilles)'“ SO-不要邪恶”