方法一
Linux網絡編程的實驗中遇到了開啟server后用CTRL+C退出但是端口仍被server占用的情況,首先可以用lsof查看占用端口的進程號
lsof -i:端口號
然后kill掉占用進程,就可以再次啟動server了
kill -9 進程號
當然上述還是有些麻煩,因此可以用以下一條命令替代:
sudo kill -9 $(lsof -i:端口號 -t)
方法二
port=8030
# 根據端口號去查詢對應的PID
pid = $(netstat -nlp | grep :$port | awk '{print $7}' | awk -F"/" '{print $1}');
# 殺掉對應的進程 如果PID不存在,即該端口沒有開啟,則不執行
if [ -n "$pid" ]; then
kill -9 $pid;
fi
