linux case用法
时间: 2023-04-25 12:04:42 浏览: 382
在Linux系统中,case是一种可以用于条件语句的结构。它可以用于测试一个变量是否匹配多个值中的任意一个,并根据匹配结果执行相应的命令。
case结构通常由关键字case和esac包围,其中case后面跟着要测试的变量名,然后是一个或多个匹配模式和相应的命令。每个匹配模式通常以|分隔,可以使用通配符和正则表达式进行模式匹配。
以下是一个示例:
```
#!/bin/bash
echo -n "Enter the name of a country: "
read COUNTRY
case $COUNTRY in
USA | United States | America )
echo "The capital of $COUNTRY is Washington D.C."
;;
France | French )
echo "The capital of $COUNTRY is Paris."
;;
Germany | German )
echo "The capital of $COUNTRY is Berlin."
;;
* )
echo "Sorry, I don't know the capital of $COUNTRY."
;;
esac
```
在上面的示例中,用户输入一个国家的名称,然后case语句将测试该名称是否与已知的国家名称匹配。如果匹配,则会打印该国家的首都,否则将显示一个错误消息。
相关问题
linux中case用法
在 Linux 中,`case` 是一种条件语句,通常用于检查变量的值是否与列表中的任何一项匹配。
`case` 语句的基本语法如下:
```
case 值 in
模式1)
命令列表
;;
模式2)
命令列表
;;
...
*)
默认命令列表
;;
esac
```
其中,`值` 是需要被检查的变量或者表达式,`模式` 是匹配的模式,`命令列表` 是当 `值` 与 `模式` 匹配时需要执行的一系列命令,`default` 是当没有任何模式匹配时需要执行的默认命令。
`模式` 可以使用通配符 `*` 匹配任何字符、使用 `?` 匹配单个字符、使用 `[...]` 匹配方括号中的任意一个字符、使用 `[!...]` 匹配除方括号中的任意一个字符以外的字符。
下面是一个 `case` 语句的例子:
```
echo "请输入一个数字(1-3):"
read num
case $num in
1)
echo "你输入的是1"
;;
2)
echo "你输入的是2"
;;
3)
echo "你输入的是3"
;;
*)
echo "你输入的不是1-3之间的数字"
;;
esac
```
在上面的例子中,用户输入一个数字,然后 `case` 语句会检查该数字是否与 `1`、`2` 或 `3` 匹配,然后执行相应的命令。如果输入的数字不在 1 到 3 之间,那么将执行默认命令。
linux中case语句用法
case语句在Linux shell脚本中用于匹配字符串并执行相应的命令,语法格式如下:
```
case "$variable" in
pattern1)
command1
;;
pattern2)
command2
;;
...
*)
default_command
;;
esac
```
其中,$variable是需要匹配的字符串,pattern1、pattern2等是需要匹配的模式,command1、command2等是匹配成功时执行的命令,default_command是所有模式都不匹配时执行的命令(可选)。
阅读全文