许多程序要求对shell脚本中的命令施加一些逻辑流程控制。有一类命令会根据条件使脚本跳过某些命令。这样的命令一般称为结构化命令(structured command)。shell
结构化命令容许你改变程序执行的顺序。在bash shell中有很多结构化命令,基本的结构化命令就是if-then语句,if-then语句能够有两种格式bash
第一种:spa
1 if command 2 then 3 commands 4 fi
第二种:命令行
1 if command;then 2 commands 3 fi
举例1code
举例2htm
举例3blog
举例4get
if语句行使用grep命令在/etc/passwd文件中查找某个用户名当前是否在系统上使用。若是有用户使用了那个登陆名,脚本会显示一些文本信息并列出该用户HOME目录的bash文件。class
可是,若是将testuser变量设置成一个系统上不存在的用户,则什么都不会显示。
1 if command 2 then 3 command 4 else 5 command 6 fi
举例1
举例2
1 if command 2 then 3 command 4 elif command 5 then 6 command 7 elif command 8 then 9 command 10 else 11 command 12 fi