小结:python3 进程中 获取进程号和杀死进程

遍历搜寻及测试总结三种方法:

 1.

import os,signal

out=os.popen("ps aux | grep xx.py").read()

for line in out.splitlines():
    print(line)
    if 'BcexServices.py' in line:
        pid = int(line.split()[1])
        print(pid)
    os.kill(pid,signal.SIGKILL)

def kill(pid):
    try:
        a = os.kill(pid, signal.SIGKILL)
        print('已杀死pid%s的进程, 返回值是:%s' % (pid, a))

    except OSError:
        print('没有如此进程!!!')

2. 用 psutil 的一种方法,能获取所有pid和name,然后遍历
  pip install psutil
import psutil

def processinfo(processName):
    pids = psutil.pids()
    for pid in pids:
        # print(pid)
        p = psutil.Process(pid)
        # print(p.name)
        if p.name() == processName:
            print(pid)
            return True  # 如果找到该进程则打印它的PID,返回true
    return False  # 没有找到该进程,返回false


processinfo('你的文件名.py')

3.(这是pustil的第二种获取所有pid和进程名的方法)
    
for proc in psutil.process_iter():
    print("pid-%d,name:%s" % (proc.pid,proc.name()))



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值