1

我一直在使用 Rails,偶尔我的服务器会滑入后台,我必须手动将其杀死。为此,我一直在使用以下命令。

sudo netstat -tulpn | grep port_number
sudo -9 PID

有没有办法在一行中做到这一点,以便我可以给它起别名?或者甚至是一种无需复制 PID 以便将其放入脚本中的方法?

4

2 回答 2

1
sudo kill -9 `sudo netstat -tulpn | grep port_number | tail -c 23 | sed -e 's/\s*\(.*\)/\1/g' -e 's/\([0-9]*\).*/\1/g'`

不过,我不得不说,这是相当危险的,因为它会杀死部分匹配项(假设您在端口 8081 上有一些东西,并且您使用 81 运行它,如果这是第一个列表,它将杀死 8081 上的项目网络统计)

于 2013-06-28T12:25:07.790 回答
1

我会使用这样的东西:

sudo netstat -tlpn | grep ":16667 " | sed -n 's@.* \([0-9]*\)/ruby.*@kill \1@p' | sudo sh

仅杀死在该确切端口上侦听的 ruby​​ 进程。

于 2013-06-28T12:28:48.253 回答