day21-20200630
p85.条件判断
文件类型进行判断,以下为常用的。
-d 是否存在,并且为目录才返回
-e 判断文件是否存在
-f 是否存在,并且为普通文件才返回
判断有两种方式,【test -e 文件】和【[-e 文件]】,脚本里面常用的为第二种方式。
【$?】上一条命令结果的判断,0正确,非0 错误。
举例:判断一个目录或者文件是否存在。
注意。用[ ]中括号的时候左右都要要加上空格,不然不会被识别。
文件权限进行判断,以下为常用的。
-r -w -x 读写执行权限
【[ -w 文件]】是否有执行权限,不会区分所有者所属人的身份,只要三个有一个满足就可以了。
两个文件之间比较
【文件1 -nt 文件2】文件1比文件2新
【文件1 -ot 文件2】文件1比文件2旧
【文件1 -ef 文件2】文件id是否相同
两个整数之间比较
【整数1 -eq 整数2】 是否相等,相等为真
【整数1 -ne 整数2】 是否不相等,不相等为真
【整数1 -gt 整数2】 1是否>2,大于为真
【整数1 -lt 整数2】 小于为真
【整数1 -ge 整数2】大于等于为真
【整数1 -le 整数2】 小于等于为真
【[ 23 gt 22 ] && echo yes || echo no】
字符串的判断
【-z 字符串】是否为空,为空返回真
【-n 字符串】是否为非空,非空返回真
【字符串1 == 字符串2】相等返回真
【字符串1 != 字符串2】不等返回真
多重条件判断
【判断1 -a 判断2】逻辑与
【判断1 -o 判断2】逻辑或
【!判断】非
p86.流程控制-if语句
单分支语句
格式
【
if [条件] ; then
程序
fi
】
或者这样
【
if [条件]
then
程序
fi
】
注意,if开头,fi结尾。
举例:写一个脚本,判断服务器根分区,磁盘空间使用情况,实际应用中是通过发送邮件的形式。
双分支语句
【
if [条件]
then
程序
else
条件不成立时
fi
】
备份很重要哦!!!
举例:备份文件夹
举例:判断apache是否启动
多分支语句
【
if [条件1]
then
程序
elif [条件2]
then
程序
else
条件不成立时
fi
】