shell双分支if语句

一 语法
if [条件判断式]
then
条件成立时,执行的程序
else
条件不成立,执行的程序
fi
 
二 判断输入是否是目录
#!/bin/bash
rate=$(df -h|grep "/dev/sda3"|awk '{print $5}'|cut -d "%" -f1)
if [ $rate -le 80 ]
then
echo "/dev/sda3 is not full"
fi
 
三 运行结果
please input a dir:/root
is dir
[root@localhost shell]# ./shell3.sh
please input a dir:fd^H^H
no no no
 
四 判断Apache是否运行
#!/bin/bash
test=$(ps aux|grep httpd|grep -v grep)
if [ -n "$test" ]
then
echo "$(date) httpd is OK"
else
service httpd start &>/dev/null
echo "$(date) restart httpd!! "
fi
 
五运行结果
[root@localhost shell]# ./shell4.sh
Fri Jul 28 21:18:32 CST 2017 httpd is OK
[root@localhost shell]# service httpd stop
Redirecting to /bin/systemctl stop httpd.service
[root@localhost shell]# ./shell4.sh
Fri Jul 28 21:19:04 CST 2017 restart httpd!!
 
六 注意事项
shell4.sh这个文件名不能包含httpd,否则运行会出错。
因为执行 ps aux|grep httpd 时,会包含文件名中的关键字httpd。
 

猜你喜欢

转载自cakin24.iteye.com/blog/2393041