bash编程之case语句


语法格式:

case 变量 in
值1)
    语句1
    语句2
    ……
    ;;
值2)
    语句1
    语句2
    ……
    ;;
*)
    语句1
    语句2
    ……
    ;;
esac

与if……elif……esle……fi的结构相似,但更具有层次感。

example:

1、写一个脚本,以在输出设备上输出菜单:
[m|M] show memory usage.
[d|D] show disk usage.
[q|Q] quit.
当用户输入相应的字符后,就可以显示出相应的内存、磁盘的使用信息。
#!/bin/bash
#
cat << EOF
[m|M] show memory usage.
[d|D] show disk usage.
[q|Q] quit.
EOF
read -t 8 Input
case $Input in
m|M)
    free -m
    ;;
d|D)
    df -l
    ;;
q|Q)
    echo "Exit..."
    ;;
*)
    echo "Invalid input."
    exit 9
    ;;
esac

相关内容