每种编程语言都会有最基本的东西,顺序语句,控制语句等,linux 脚本编程中的if else控制与其余编程语言仍是有很不同的地方的。 linux
if判断语句成功的依据是返回的exit code是否是0,即语句有没有正确执行,执行系统命令如ls等时会正确产生exit code,二全部的test如-z -gt等等的若是为true则使exit code为0,if else语句的行为就跟前面的同样了。 正则表达式
1.数字的比较有 -gt -lt -ge -le -eq -ne 六种方式。 express
2.字符串型比较 -z(length=0) -n(length>0) > < != = 不过脚本会将<与>视为输入输出重定向,因此须要加\来进行转义,判断依据是ascii序 编程
3.文件判断 -defrwx -s(文件存在且不为空) -O(文件存在且当前用户为文件全部者)-G 编程语言
-nt -ot (newer older) spa
4.双括号(( expression )) 能够应用一些更高级的数学公式规则:++ -- ! << >> & | && || code
**(方) ci
5.双方括号[[ expression ]]应用一些更高级的字符串比较,能够应用正则表达式来实现模式匹配。 字符串
6.case语句: 数学
case var in
pattern1|pattern2) command1;;
pattern3) command2;;
*) command3;;
esac
case与esac对应表示一个case语句,多个条件能够用|应用同一条command,* 表示剩下全部的,命令的最后结尾要双分号;;结束