Linux shell中提供了条件测试的功能,拥有特定的流程控制语句。bash提供了三种流程控制语句,分别为:条件,循环和分支。
条件测试是shell编程很重要的一部分,通常用"[ ]"来表示条件测试。要注意的是其中的表达式与两边之间留有空格。shell可以支持不同的条件测试,可分为文件测试,整数测试和字符串测试几大类
文件测试可以对文件属性进行判断,在系统管理脚本或者启动脚本很常见。比如
[ -f "filename" ] 判断是否是一个文件
[ -x /bin/ifconfig ] 判断/bin/ifconfig是否存在并有可执行权限
[ -w /dev/null ] 判断/dev/null是否可写
整数比较功能
[ "$m" -eq "$n" ] 判断m和n是否相等
[ "$m" -ge "$n"] 判断m是否大于等于n
字符串比较功能
[ "$a" = "$b" ] 判断 a b字符串是否相同
[ -n "$str" ] 判断str字符串是否为空
条件流程控制的if表达是,若if后面的为真则执行then后面的部分
if condition;then
code block
else code block
fi