074_扩展篇_Shell编程(六)_流程控制(一)_if单分支 if 判断 基本语法 单分支 if [ 条件判断式 ];then 程序 fi 或 if [ 条件判断式 ] then 程序 fi 多分支 if [ 条件判断式 ] then 程序 elif [ 条件判断式 ] then 程序 else 程序 fi 注意 1) [ 条件判断式 ] 中括号和条件判断式之间必须有空格 2) if后要有空格 实例 判断a是否大于18 [root@hadoop100 tf]# a=25 [root@hadoop100 tf]# if [ $a -gt 18 ];then echo 成年;fi 成年 脚本判断输入的字符串是否正确 #!/bin/bash if [ $1 = abc ] then echo "OK" fi [root@hadoop100 tf]# ./test_if.sh ./test_if.sh: 第 2 行:[: =: 期待一元表达式 如果这样写,当不传入任何参数时会报错, 可以用""来做字符串拼接解决此问题。 将输入参数$1和比较参数abc后面拼接了字符s, 如果执行脚本不输入参数会比较 s=abcs #!/bin/bash if [ "$1"s = "abc"s ] then echo "OK" fi [root@hadoop100 tf]# ./test_if.sh abc OK 多条件判断 a大于18,小于35 [root@hadoop100 tf]# a=25 [root@hadoop100 tf]# if [ $a -gt 18 ] && [ $a -lt 35 ]; then echo OK; fi OK 也可以这样写,-a是逻辑与,-o是逻辑或 [root@hadoop100 tf]# if [ $a -gt 18 -a $a -lt 35 ]; then echo OK; fi OK