如何找到基于端口的进程,并把他们全部杀死? [英] How to find processes based on port and kill them all?

查看:137
本文介绍了如何找到基于端口的进程,并把他们全部杀死?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

查找基于端口号的流程和杀死他们。
PS -efl | grep的PORT_NUMBER |杀-9 process_found_ previously

find processes based on port number and kill them all. ps -efl | grep PORT_NUMBER | kill -9 process_found_previously

如何完成最后一列?

推荐答案

PS -efl问题| grep的PORT_NUMBER PORT_NUMBER 可输出 PS 匹配等栏目,以及(日期,时间,PID,...)。一个潜在的杀小号preE如果root身份运行!

The problem with ps -efl | grep PORT_NUMBER is that PORT_NUMBER may match other columns in the output of ps as well (date, time, pid, ...). A potential killing spree if run by root!

我会做这个:

PORT_NUMBER=1234
lsof -i tcp:${PORT_NUMBER} | awk 'NR!=1 {print $2}' | xargs kill 

命令击穿


  • lsof的-i TCP:$ {PORT_NUMBER} ) - 列表的是,TCP端口上侦听的所有进程

  • AWK 'NR = 1 {$打印2}!') - 忽略第一行,打印每条线的第二列

  • xargs的杀) - 对结果作为参数传递给。可能有几个。

  • (lsof -i tcp:${PORT_NUMBER}) -- list all processes that is listening on that tcp port
  • (awk 'NR!=1 {print $2}') -- ignore first line, print second column of each line
  • (xargs kill) -- pass on the results as an argument to kill. There may be several.

这篇关于如何找到基于端口的进程,并把他们全部杀死?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆