shell脚本语法--case/exac
来源:互联网 发布:成考和网络教育区别 编辑:程序博客网 时间:2024/05/16 12:38
case
命令可类比C语言的switch
/case
语句,esac
表示case
语句块的结束。C语言的case
只能匹配整型或字符型常量表达式,而Shell脚本的case
可以匹配字符串和Wildcard,每个匹配分支可以有若干条命令,末尾必须以;;结束,执行时找到第一个匹配的分支并执行相应的命令,然后直接跳到esac
之后,不需要像C语言一样用break
跳出。
#! /bin/shecho "Is it morning? Please answer yes or no."read YES_OR_NOcase "$YES_OR_NO" inyes|y|Yes|YES) echo "Good Morning!";;[nN]*) echo "Good Afternoon!";;*) echo "Sorry, $YES_OR_NO not recognized. Enter yes or no." exit 1;;esacexit 0
使用case
语句的例子可以在系统服务的脚本目录/etc/init.d
中找到。这个目录下的脚本大多具有这种形式(以/etc/apache2
为例):
case $1 instart)...;;stop)...;;reload | force-reload)...;;restart)...*)log_success_msg "Usage: /etc/init.d/apache2 {start|stop|restart|reload|force-reload|start-htcacheclean|stop-htcacheclean}"exit 1;;esac
启动apache2
服务的命令是
$ sudo /etc/init.d/apache2 start
$1
是一个特殊变量,在执行脚本时自动取值为第一个命令行参数,也就是start
,所以进入start)
分支执行相关的命令。同理,命令行参数指定为stop
、reload
或restart
可以进入其它分支执行停止服务、重新加载配置文件或重新启动服务的相关命令。
- shell脚本语法--case/exac
- linux shell脚本 case和if语法
- shell语法之case
- shell语法之case
- shell语法case
- shell 脚本 case structure
- shell脚本使用case
- shell——case语法
- shell 脚本和case例子
- shell 脚本和case例子
- shell 脚本的case例子
- shell 脚本的case例子
- shell脚本之case语句
- Shell脚本的基本语法(二) 预定义特殊字符、case语句和函数调用
- Shell脚本语法
- Shell脚本语法
- Shell脚本语法
- Shell脚本语法
- 类与类之间的关系图(Class Diagram,UML图)
- Android适配器之-----SimpleAdapter
- 感谢eygle帮我找到密码——能沾上eygle光就是不错:)
- GreenCam:自动关闭显示器的节能好帮手
- 全球地名中英文对照表(B)
- shell脚本语法--case/exac
- 无状态地址自动配置
- 如何调试makefile变量
- CV 参考手册
- 正负数十进制转二进制 位运算 C Language
- 全球地名中英文对照表(C)
- Android适配器之---SimpleCursorAdapter
- 全球地名中英文对照表(D)
- 经营外贸网站的9个关键细节