[python]实现查看windows系统某端口是否被占用并kill掉
代码如下
import psutil
def check_port(port):
for conn in psutil.net_connections():
if conn.laddr.port == port:
pid = conn.pid
process = psutil.Process(pid)
print(f"端口 {port} 被进程 {process.name()} (PID: {pid}) 占用")
return True, pid
return False, None
def close_process(pid):
try:
process = psutil.Process(pid)
process.terminate()
print(f"已关闭进程 {process.name()} (PID: {pid})")
except Exception as e:
print(f"关闭进程失败: {e}")
def main():
port = int(input("请输入要查询的端口号:"))
is_occupied, pid = check_port(port)
if is_occupied:
choice = input("是否关闭该进程?(y/n):")
if choice.lower() == 'y':
close_process(pid)
else:
print("端口未被占用")
input()
if __name__ == "__main__":
main()