我想杀死所有侦听端口的进程
kill -kill `lsof -t -i tcp:3000`
现在问题是我想要排除某些PID,-p选项对我不起作用。
kill -kill -p `pidof chrome` `lsof -t -i tcp:1337`
答案 0 :(得分:1)
您可以在此处使用while
循环:
cpid=$(pidof chrome) && lsof -t -i tcp:3000 | while read pid; do \
[[ $cpid != $pid ]] && kill "$pid"; done
获取chrome
的PID是变量cpid
,然后迭代lsof -t -i tcp:3000
的输出,如果PID与chrome的PID不匹配,则kill
- 这个过程。