# 2021-01-07 #「systemd」- 从 systemctl status 中提取个别字段

问题描述

在 Shell Script 中,我们需要判断服务的运行状态,以作出相应的逻辑处理。

该笔记将记录:如何获取 systemd 管理的某个服务的运行状态。

解决方法

我们以 nginx 服务为例,判断服务的运行状态

# systemctl show nginx.service --property ActiveState 
ActiveState=inactive

# systemctl start nginx.service 

# systemctl show nginx.service --property ActiveState 
ActiveState=active

如果希望在 Shell Script 中使用:

eval $(systemctl show nginx.service --property ActiveState)
if [ "$ActiveState" = "active" ]; then
    echo "Nginx is running."
else
    echo "Nginx is stopped."
fi

参考文献

K4NZ/从 systemctl status 中提取个别字段
python - how to get individual values from the output of systemctl status - Stack Overflow
shell - Run a string as a command within a Bash script - Stack Overflow

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值