如何删除已分配给端口的当前进程/应用程序?

例如:localhost:8080


当前回答

如果你想使用Python:检查是否可以在Python中杀死正在监听特定端口的进程,例如8080?

Smunk给出的答案很好。我在这里重复他的密码:

from psutil import process_iter
from signal import SIGTERM # or SIGKILL

for proc in process_iter():
    for conns in proc.connections(kind='inet'):
        if conns.laddr.port == 8080:
            proc.send_signal(SIGTERM) # or SIGKILL
            continue

其他回答

如果你正在使用giitbash

第一步:

netstat -ano | findstr :8080

第二步:

taskkill /PID typeyourPIDhere /F 

(/F强制终止进程)

简单的CMD工作我。容易记住

找到你想杀死的端口号并运行下面的CMD

npx kill-port 8080

完成端口后停止并得到此消息

npx: installed 3 in 13.796s
Process on port 8080 killed

你可以运行一个bat文件:

@ECHO OFF                                                                              
FOR /F "tokens=5" %%T IN ('netstat -a -n -o ^| findstr "9797" ') DO (
SET /A ProcessId=%%T) &GOTO SkipLine                                                   
:SkipLine                                                                              
echo ProcessId to kill = %ProcessId%
taskkill /f /pid %ProcessId%
PAUSE

步骤1:

打开cmd.exe(注意:您可能需要以管理员身份运行它,但这并不总是必要的),然后运行以下命令:

网络统计 -什么 |查找 :<PORT>

(将<PORT>替换为您想要的端口号,但保留冒号)

红色圈出的区域显示PID(进程标识符)。找到正在使用所需端口的进程的PID。

步骤2:

接下来,执行如下命令:

taskkill /PID <PID> /F

(这次没有冒号)

最后,您可以重新执行“步骤1”中的命令来检查操作是否成功。如果它是成功的,你不应该看到任何更多的搜索结果的端口号。

打开命令提示符并发出下面的命令

netstat -ano|findstr "PID :8888"

输出将显示占用端口的进程id

发出下面的命令杀死PID

taskkill /pid 8912 /f

您将收到如下输出

SUCCESS: The process with PID 8860 has been terminated.