#!/usr/bin/python
# -- coding: UTF-8 --
import sys, os;
storecmd = 'php /home/wwwroot/script/store.php -d';
grepcmd = 'ps aux | grep store.php | grep -v grep';
maxProcessNum = 1;
boolkill = False;
if len(sys.argv)>1:
for i in sys.argv[1:]:
if i.isdigit():
maxProcessNum = int(i);
if i=='-kill':
boolkill = True;
pids = [];
output = os.popen(grepcmd).readlines();
if len(output)>0:
for line in output:
pids.append(int(line.split()[1]));
print('store.php is running, pid:'+' '.join([str(i) for i in pids]));
if boolkill:
for pid in pids: os.kill(pid,9);
print('has been killed');
sys.exit();
else:
if boolkill:
print('store.php is not running');
sys.exit();
currProcessNum = len(pids);
newProcessNum = maxProcessNum - currProcessNum;
if newProcessNum==0:
sys.exit();
elif newProcessNum<0:
sys.exit();
else:
print('need to create %d processes' % (newProcessNum));
for i in range(1,newProcessNum+1):
exitCode = os.system(storecmd);
if exitCode==0:
print('no:%d - start ok' % (currProcessNum+i));
else:
print('no:%d - start failed, exitCode:%d' % (currProcessNum+i,exitCode));
python+shell简易进程控制
最新推荐文章于 2022-08-13 16:41:39 发布