case语句

时间:2020-02-23 14:37:44  来源:igfitidea点击:

case语句通常在可能的两个以上的结果时使用。
这是语法:

case $VARIABLE in
value_1) commands for specified value_1 ;;
value_2) commands for specified value_2 ;;
value_3) commands for specified value_3 ;;
*) commands for value not matching any specified choices ;;
esac

将$变量与值进行比较,直到找到匹配项。
如果找到匹配项,则执行关联的命令,终止case语句。
如果用户输入的值与CASE语句中指定的任何选项不匹配,则*)字符将启动在这种情况下运行的代码部分。
ESAC表示案例语句的结尾。

考虑以下示例。

case_example

#!/bin/bash

echo “Select your choice:” 
echo “Press 1 to display your current directory” 
echo “Press 2 to display the current date and time” 
echo “Press 3 to list the content of the current directory” 
read CHOICE 
case $CHOICE in 
1) pwd;; 
2) date;; 
3) ls -l;; 
*) echo Invalid selection;; 
esac

在上面的示例中,我们可以看到用户可以选择他/她是否想要显示当前目录,当前时间或者列出目录内容。
如果用户输入不等于1,2或者3的值,则会显示无效选择消息.

chmod +x case_example
./ case_example

case语句在其他编程语言中,称为switch语句或者多道分支。