python(8) : win工具[根据占用端口杀死进程]|[检查端口是否被占用]

来源: GPT, 豆包

1.根据占用端口杀死进程


import psutil

def kill_process_by_port(port):
    for proc in psutil.process_iter(['pid', 'name']):
        try:
            for conn in proc.connections():
                if conn.laddr.port == port:
                    print(f"Killing process {proc.name()} (PID: {proc.pid})")
                    proc.kill()
        except (psutil.NoSuchProcess, psutil.AccessDenied, psutil.ZombieProcess):
            pass

if __name__ == '__main__':
    port_to_kill = 8000  # 替换为你要杀死的进程所使用的端口号
    kill_process_by_port(port_to_kill)

2.检测端口是否占用


import subprocess


# 查看端口是否占用, win专用
def check_port(l_port):
    result = subprocess.run(('netstat', '-ano'), capture_output=True, text=True,
                            creationflags=subprocess.CREATE_NO_WINDOW)
    output = result.stdout
    lines = output.split('\n')
    for line in lines:
        # 注意,这里要确保状态是 LISTENING 才表示端口被占用
        if str(l_port) in line and 'LISTENING' in line:  
            return True
    return False

if __name__ == '__main__':
    check_port(8000)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值