检测网络服务是否激活

[root@exam ~]# systemctl stop httpd
#!/bin/bash
read -p "请选择要检查的网络服务:" soft
Act=$(systemctl is-active $soft)
if [ $Act = "active" ]
then
       echo "$soft 网络服务已经启动。"
else
       if [ $Act = "unknown" ]
       then
                echo "没有安装或者不能识别网络服务$soft"
       else
               echo "$soft 网络服务没有启动"
               systemctl start $soft
               echo "网络服务启动成功"
       fi
fi

验证:
[root@exam ~]# systemctl is-active nano
unknown
[root@exam ~]# systemctl is-active httpd
active
[root@exam ~]# systemctl stop httpd
[root@exam ~]# systemctl is-active vsftpd
active
[root@exam ~]# systemctl is-active httpd
inactive
[root@exam ~]# systemctl is-active nano
unknown
[root@exam ~]# ./checkService.sh
请选择要检查的网络服务:vsftpd
vsftpd 网络服务已经启动。
[root@exam ~]# ./checkService.sh
请选择要检查的网络服务:httpd
httpd 网络服务没有启动
网络服务启动成功
[root@exam ~]# ./checkService.sh
请选择要检查的网络服务:nano
没有安装或者不能识别网络服务nano
[root@exam ~]# systemctl is-active httpd
active

你可能感兴趣的:(Linux)