如果知道某个进程的端口,如何终止该进程?例如,如果某个进程正在端口上运行,12345
那么如何在 linux/ubuntu 中终止该进程。
答案1
您可以使用
sudo netstat -tupln
显示正在监听哪个端口。您应该看到类似这样的内容(我稍微简化了输出)。
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 2472/apache2
第四列(在我的示例中为 0.0.0.0:80)将显示端口号(此处为 80),最后一列(2472/apache2)将显示 PID(2472)。
然后您可以发出
sudo kill -15 PID
其中 PID 是我们在上一个命令中找到的 PID。这将向进程发送 SIGTERM。如果失败,您可能需要
sudo kill -9 PID
但这通常是一种不太友好的终止进程的方式。有关更多信息,您应该查看
man kill
答案2
列出所有监听端口:
网络状态监测
取相应的一个,比如说 80,然后使用以下命令将其杀死:
杀死-9 $(lsof-i:80-t)