1 import psutil 2 from subprocess import Popen, PIPE 3 4 process_name ="bsmr.exe,fxclient.exe,FxTerm.exe,Xshell.exe,Foxmail.exe" 5 def getoutput(command): 6 p = Popen(command, stdin=PIPE, stderr=PIPE, shell=True) 7 out, err = p.communicate() 8 if err: 9 print(\'command exec error: [{}]\'.format(command)) 10 print(err) 11 else: 12 return out 13 14 15 def kill_process(): 16 p = psutil.pids() 17 succeed_name = [] 18 succeed_process = [] 19 failed_process = [] 20 for i in psutil.pids(): 21 info = psutil.Process(i) 22 succeed_name.append(info.name()) 23 for i in process_name.split(\',\'): 24 if i in succeed_name: 25 #print("进程名称为:{}".format(i)) 26 print("开始执行kill命令") 27 command = \'taskkill /IM {} /F\'.format(i) 28 print(command) 29 getoutput(command) 30 succeed_process.append(i) 31 else: 32 print("当前进程不存在:{}".format(i)) 33 failed_process.append(i) 34 print("kill进程失败,当前kill掉进程为:{}, 未kill进程为:{}".format(succeed_process, failed_process)) 35 36 37 if __name__ == \'__main__\': 38 kill_process()