case $var in
匹配模式1) 命令1;命令2;;
匹配模式2) 命令序列2;;
... ...
*) 默认执行的命令序列;;
esac
case行尾必须为单词“in”,每一个模式必须以右括号“)”结束。
双分号“;;”表示命令序列结束。
匹配模式中可是使用方括号表示一个连续的范围,如[0-9];使用竖杠符号“|”表示或。
最后的“*)”表示默认模式,当使用前面的各种模式均无法匹配该变量时,将执行“*)”后的命令序列。
[color=red]注意:*)指匹配其他任意字符串
每种情况都以;;结束[/color]
#!/bin/bash
read -p "press some key ,then press return :" KEY
case $KEY in
[a-z]|[A-Z]) echo "It's a letter.";;
[0-9]) echo "It's a digit.";;
*) echo "It's function keys、Spacebar or other ksys."
esac