如何删除已分配给端口的当前进程/应用程序?
例如:localhost:8080
如何删除已分配给端口的当前进程/应用程序?
例如: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
其他回答
让我们自动化!
如果你像我一样经常遇到这个问题,创建一个.bat文件并运行它来结束进程。
创建一个bat文件"killport.bat"
set /P port="Enter port : "
echo showing process running with port %port%
netstat -ano|findstr "PID :%port%"
set /P pid="Enter PID to kill : "
taskkill /pid %pid% /f
set /P exit="Press any key to exit..."
通过双击和运行此文件
输入端口号(然后它将列出带有PID的进程) 输入PID kill
Done
(可选)
设置为path environment,以便您可以从任何地方访问此文件。
你很可能知道如何给env添加一个新路径。但如果你不这样做,你可以这样做
1 / 4
在开始菜单上搜索ENV
2 . 4步
选择环境变量
3 / 4步骤
选择“path”,然后点击编辑按钮
4 / 4步骤
点击“新建”添加。bat文件的存放路径。自从我把它存到…我正在添加这个路径。您的路径将取决于您保存该文件的位置。
打开CMD并测试。请记住,您的文件名将运行此文件的单词。因为我把。bat文件保存为'killport.bat' => 'killport'是运行它的词。
如果你喜欢! 在这里分享你是如何做到的
我在Windows上运行zookeeper,无法使用zookeeper-stop.sh停止在2181端口运行的zookeeper,所以尝试了这个双斜线“//”方法来kill任务。它工作
1. netstat -ano | findstr :2181
TCP 0.0.0.0:2181 0.0.0.0:0 LISTENING 8876
TCP [::]:2181 [::]:0 LISTENING 8876
2.taskkill //PID 8876 //F
SUCCESS: The process with PID 8876 has been terminated.
我知道这是一个很老的问题,但发现很容易记住,快速命令杀死使用端口的应用程序。
要求:npm@5.2.0^版本
npx kill-port 8080
你也可以在这里阅读更多关于kill-port的内容:https://www.npmjs.com/package/kill-port
使用GitBash的一行解决方案:
tskill `netstat -ano | grep LISTENING | findstr :8080 | sed -r 's/(\s+[^\s]+){4}(.*)/\1/'`
将8080替换为服务器正在侦听的端口。
如果您需要经常使用它,请尝试添加到~/。Bashrc函数:
function killport() {
tskill `netstat -ano | findstr LISTENING | findstr :$1 | sed -r 's/^(\s+[^\s]+){4}(\d*)$/\1/'`
}
然后简单地运行
killport 8080
第一步(与KavinduWije所写的接受答案相同):
netstat -ano | findstr:yourPortNumber
第2步更改为:
tskill typeyourPIDhere
注意:taskkill在某些git bash终端中不起作用