import psutil
import os
cmd = [('wxwork_approval_data_consumer.py', "systemctl {0} wxwork_approval_data_consumer.service"),
('/opt/work_wechat/run.sh', "systemctl {0} run_work_wechat.service")
]
pre_run = list()
for single_cmd in cmd:
x = single_cmd[0]
count = 0
for pid in psutil.pids():
p = psutil.Process(pid)
for z in p.cmdline():
if x in z:
if p.is_running():
print(str(pid) + ' is running.')
count += 1
break
if count > 0:
break
if count == 0:
pre_run.append(single_cmd[1])
for pr in pre_run:
os.system(pr.format('start'))
# 利用系统定时器 每隔一秒执行上面的watch_dog程序
crontab -e
*/1 * * * * /opt/work_wechat/watch_dog.py