如何删除已分配给端口的当前进程/应用程序?
例如:localhost:8080
如何删除已分配给端口的当前进程/应用程序?
例如:localhost:8080
当前回答
如果你使用的是Windows终端,那么杀死过程可能不那么乏味。 我一直在使用windows终端,kill PID对我来说可以很好地杀死端口上的进程,因为新的windows终端支持某些bash命令。例如:杀死13300人
整个过程是这样的
打开Windows终端 键入以下命令以显示在您希望终止进程的端口上运行的进程。 netstat -ano | findstr:PORT 输入following终止进程。 杀死PID
例如:
PS C:\Users\username> netstat -ano | findstr :4445
TCP 0.0.0.0:4445 0.0.0.0:0 LISTENING 7368
TCP [::]:4445 [::]:0 LISTENING 7368
PS C:\Users\username> kill 7368
PS C:\Users\username> netstat -ano | findstr :4445
PS C:\Users\username>
当我输入第一个命令来列出端口上的进程时,它返回空。这意味着现在所有进程都被杀死了。
更新:kill是Stop-Process的别名。谢谢@FSCKur让我们知道。
其他回答
在Windows PowerShell版本1或更高版本中停止端口3000上的进程:
Stop-Process (,(netstat -ano | findstr:3000).split() | foreach {$[$.length-1]}) -Force
根据@morganpdx的建议,这里有一个更像powershell的更好的版本:
Stop-Process -Id (get - netttcpconnection -LocalPort 3000)。OwningProcess force
有两种方法可以终止进程
选项01 -最简单和最简单 要求:npm@5.2.0^版本 以管理员身份打开命令提示符,并使用端口发出以下命令(这里的端口是8080)
npx kill-port 8080
选项02 -最常用
步骤1 以管理员身份打开Windows命令提示符 一步02 用下面的命令找到你想要杀死的端口的PID
netstat -ano|findstr "PID :8080"
TCP 0.0.0.0:8080 0.0.0.0:0监听18264
一步03 用下面的命令杀死上面收到的PID(在我的例子中PID是18264)
taskkill /PID 18264 /f
使用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
打开命令提示符并发出下面的命令
netstat -ano|findstr "PID :8888"
输出将显示占用端口的进程id
发出下面的命令杀死PID
taskkill /pid 8912 /f
您将收到如下输出
SUCCESS: The process with PID 8860 has been terminated.
netstat -ano | findstr :PORT
kill PI