如何通过使用C,C ++在Linux上指定其名称来以编程方式检查特定守护程序是否正在运行?
答案 0 :(得分:0)
由于我无法在上面添加评论。 您可以使用systemctl检查服务状态。
systemctl status servicename
这是终端命令。
使用system("systemctl status servicename")
你可以管理来自c ++的调用。
希望这是正在看的或类似的。
答案 1 :(得分:0)
要运行的简单命令是systemctl status ${service} | grep "Active:" | cut -d' ' -f6
。捕获上述命令的标准输出,它应等于(running)
。
请注意,*ctl
仅用于命令行使用,不供其他程序使用。可接受的方法是使用systemd
API与dbus
进行交互。
答案 2 :(得分:-1)
systemctl is-active $ {service_name}可用于检查服务是否处于活动状态