用shell脚本写case语句
时间: 2023-06-30 08:15:51 浏览: 99
下面是一个使用 `case` 语句的 shell 脚本示例:
```bash
#!/bin/bash
echo "请选择一种水果:"
echo "1. 苹果"
echo "2. 香蕉"
echo "3. 葡萄"
echo "4. 橙子"
echo "5. 草莓"
read choice
case $choice in
1) echo "您选择了 苹果" ;;
2) echo "您选择了 香蕉" ;;
3) echo "您选择了 葡萄" ;;
4) echo "您选择了 橙子" ;;
5) echo "您选择了 草莓" ;;
*) echo "非法选择" ;;
esac
```
运行脚本后,会显示一个菜单,提示用户选择一个水果,根据用户的选择输出对应的信息。
`case` 语句的语法如下:
```bash
case 变量名 in
值1) 命令1 ;;
值2) 命令2 ;;
...
*) 默认命令 ;;
esac
```
`case` 语句会将变量名的值与每个值进行比较,如果匹配则执行对应的命令。如果没有匹配,则执行默认命令。
相关问题
shell脚本 switch case语句
Shell脚本中的switch case语句用于根据不同的条件执行不同的代码块。它类似于其他编程语言中的switch语句,可以根据一个表达式的值来选择执行不同的分支。
下面是一个示例的Shell脚本中的switch case语句的基本语法:
```
case expression in
pattern1)
# 执行代码块1
;;
pattern2)
# 执行代码块2
;;
pattern3)
# 执行代码块3
;;
*)
# 默认情况下执行的代码块
;;
esac
```
在上面的语法中,expression是一个表达式,可以是变量、命令的输出结果等。每个pattern是一个匹配条件,当expression的值与某个pattern匹配时,对应的代码块会被执行。每个代码块以两个分号(;;)结束,最后的默认情况下执行的代码块使用星号(*)表示。
以下是一个示例,演示了如何使用switch case语句来判断输入的数字对应的星期几:
```
#!/bin/bash
echo "请输入一个数字(1-7):"
read num
case $num in
1)
echo "星期一"
;;
2)
echo "星期二"
;;
3)
echo "星期三"
;;
4)
echo "星期四"
;;
5)
echo "星期五"
;;
6)
echo "星期六"
;;
7)
echo "星期日"
;;
*)
echo "输入无效"
;;
esac
```
shell脚本case语句
shell脚本中的case语句与其他编程语言中的switch语句类似,用于分支选择。语法格式如下:
```
case 变量名 in
模式1)
命令1
命令2
...
;;
模式2)
命令3
命令4
...
;;
...
esac
```
其中,变量名为要判断的变量,模式1、模式2等为变量可能取值,命令1、命令2等为在对应模式下要执行的命令。每组命令要以双分号结尾。
例如:
```
case $1 in
start)
echo "Starting service..."
service myservice start
;;
stop)
echo "Stopping service..."
service myservice stop
;;
*)
echo "Invalid option"
;;
esac
```
这个例子中,第一个参数传递给脚本的值将被赋值给变量$1,然后根据$1的值来决定执行哪些命令。
阅读全文