从值中删除点

从值中删除点

我正在尝试编写一个脚本来显示服务是否正在运行。
命令:
service ntpd status | awk '{print $5}'
输出:
running...
我怎样才能删除这些点?或者是否有更好的方法来查明服务是否正在运行?

答案1

您可以使用 awk 的gsub命令:

$ service ntpd status | awk '{gsub(/[.]/,"");print $NF}'
running

使用是NF因为状态字通常是输出的最后一个字。

该命令service是检查服务的旧方法(对于尚未使用 systemctl 的系统)。与 systemd 一起使用:

systemctl is-active sshd >/dev/null 2>&1 && echo YES || echo NO

答案2

我尝试使用下面的 sed 命令,效果很好

@praveen_linux_example ~]# service sshd status| sed "s/\.//g"
openssh-daemon (pid  2268) is running

答案3

如果你坚持sed

service ntpd status | sed 's/^.* \|\.*$//g'
running

相关内容