上期回顾:小萌新—> Linux高手系列:包管理 作为一个有追求的测试,如何从一个运维小萌新成长为一个Linux 高手?请持续关注我们的 《小萌新 -> Linux高手系列文章》。 今天这篇文章将给大家介绍 Shell 脚本中的流程控制。 Shell 脚本介绍 Shell 脚本是 由一些按照一定格式组合起来的 Shell 命令组成。不需要编译就可以直接执行,它是边解释边执行的。 Linux 系统提供多种不同的Shell以供选择。常用的有 Bourne Shell(简称sh)、C-Shelll(简称csh)、Korn Shell(简称ksh)和Bourne Again Shell (简称bash)。 通常在Shell 脚本中,第一行都有类似这样的语句: #!/bin/bash 这句话的意思是指定一款在/bin/下名字叫 bash 的 Shell 解释器,来解释脚本中的命令。如果系统用的是其他的解释器,就要将/bin/bash 改成相应的名字。 示例:hello.sh
注: 如果没有执行权限的需要添加执行权限,chmod +x hello.sh ; 除了第一行,后面的'#'号就是注释符,'#'号后面的就是注释内容,会被解释器忽略。 在使用 Shell 脚本中完成一系列命令操作时,总是离不开流程控制语句,以便我们对于不同情况进行处理。 下面正式开始介绍 Shell 脚本中的流程控制。 if 语句 在 Shell 脚本中经常需要通过判断一定条件后,决定执行什么样的命令,我们通常使用 if 语句达到此目的。 if 语句语法:
注: []两边需要有空格; 最后需要以 fi 结束 if 语句 if语句中的数值判断: 使用 test 命令进行判断: 示例代码:
case 语句 Shell 脚本中 case 语句为多选择语句。可以用 case 语句匹配一个值与一个模式,如果匹配成功,执行相匹配的命令。 case 语句语法:
示例:
for 循环 for 循环是比较常用的循环结构,shell 中的 for 循环与 java 中类似,不同的是这里用 do done 代替了 java 中的大括号 { }。 示例:
while 循环 Shell 脚本中的 while 循环与 java中类似,当判断条件 condition 结果为 true 时,执行循环体中的 command 操作语句;不同的是这里用 do done 代替了java 中的大括号 { }。 示例:
结语 |
|