2013-06-28 50 views
0

我一直在使用rails,偶爾我的服務器會滑入後臺,我必須手動將其終止。爲此,我一直在使用以下命令。使用端口在一行中查找並終止PID

sudo netstat -tulpn | grep port_number 
sudo -9 PID 

有沒有辦法在一行中做到這一點,以便我可以別名?或者甚至沒有我必須複製PID,以便我可以把它放在腳本中的方法嗎?

+0

你能顯示第一個命令的輸出嗎? –

+0

http://www.serverschool.com/server-configuration/listening-for-programs-on-server-ports/ – screenmutt

回答

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項如果這是在netstat的第一上市)

+0

工程很好。只要它讓我接受,就會接受。 – screenmutt

1

我會用這樣的:

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

只有殺死紅寶石進程監聽,準確的端口上。

相關問題