一个http服务的监控脚本
脚本:
#!/bin/bash
while true
do
echo -e "
\033[31m A 开启服务 \033[0m
\033[32m B 关闭服务 \033[0m
\033[33m C 重启服务 \033[0m
\033[34m D 查看当前的服务状态 \033[0m
\033[35m Q 退出 \033[0m
"
read -p "请输入你的选择:" char
state=$(systemctl status httpd |grep 'Active' |awk '{print $3}')
case $char in
a|A)
if [ $state == "(dead)" ]; then
systemctl start httpd
echo "服务开启从成功!!!"
else
echo "服务已经处于开启状态!!!"
fi
;;
b|B)
if [ $state == "(running)" ];then
systemctl stop httpd
echo "服务关闭成功!!!"
else
echo "服务已经处于关闭状态!!!!"
fi
;;
c|C)
if [ $state == "(dead)" ];then
echo "请先开启服务!!"
elif [ $state == "(running)" ]; then
systemctl restart httpd
echo "服务重启成功!!!"
fi
;;
d|D)
echo "$state"
;;
q|Q)
exit 0 ##0是正常退出,1是错误退出
;;
esac
done
测试: