Windows機器:
需要殺死一個Node.js服務器,並且你沒有運行任何其他Node進程,你可以告訴你的機器殺死所有名為的進程node.exe
。這看起來像這樣:
taskkill /im node.exe
如果進程仍然存在,您可以通過添加/f
標志來強制進程終止:
taskkill /f /im node.exe
如果您需要更細粒度的控制並且只需要殺死在特定端口上運行的服務器,您可以使用它netstat
來查找進程ID,然后向其發送一個kill信號。因此,在您的情況下,端口所在的位置8080
,您可以運行以下命令:
C:\>netstat -ano | find "LISTENING" | find "8080"
輸出的第五列是進程ID:
TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 14828 TCP [::]:8080 [::]:0 LISTENING 14828
然后你可以用它來殺死進程taskkill /pid 14828
。如果進程拒絕退出,則只需將/f
(force)參數添加到命令中。
Linux機器:
這個過程幾乎完全相同。你可以殺死機器上運行的所有Node進程(-$SIGNAL
如果SIGKILL
不足則使用):
killall node
或者也可以使用netstat
,您可以找到在端口上偵聽的進程的PID:
$ netstat -nlp | grep :8080 tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 1073/node
在這種情況下,進程ID是第六列中進程名稱之前的數字,然后您可以將其傳遞給kill
命令:
$ kill 1073
如果進程拒絕退出,那么只需使用-9
標志,這是一個SIGTERM
並且不能被忽略:
$ kill -9 1073