今天写了个python监控进程脚本,需要知道重启进程后的进程pid。
在网上查看到一些方法,参考链接:
https://www.jb51.cc/linux/440314.html
import os
import subprocess
# 查询PID是否存在
progresses = os.popen("ps -eo pid|grep '%s'" % pid)
if len(progresses.readlines()) > 0:
print('进程运行正常')
# 重启进程 使用subprocess模块重启进程 获取进程的pid
proc = subprocess.Popen("/bin/bash /home/www/test.sh", shell=True)
new_pid = proc.pid
# os模块
p = os.system("/bin/bash /home/www/test.sh")
os.system返回退出代码.它不提供子进程的pid.
https://www.jianshu.com/p/cba22cce2f97
查看进程的启动时间:
ps -eo lstart 启动时间
查看进程的运行时间
ps -eo etime 运行多长时间.
查看进程的pid、启动时间、运行时间
ps -eo pid,lstart,etime | grep [ pid ]