linux shell 命令批量杀死进程

版权声明:原创文章欢迎转载,不过要记得加出处哦 https://blog.csdn.net/wljk506/article/details/83582068

shell 批量搜索进程名并杀死这些进程

ps -ef |grep /logstash |awk '{print $2}'|xargs kill -9

ps -ef |grep /logstash 搜索logstash的进程
awk '{print $2}' 读入有'\n'换行符分割的一条记录,然后将记录按指定的域分隔符划分域,填充域,$0则表示所有域,$1表示第一个域,$n表示第n个域。默认域分隔符是"空白键""[tab]键",所以$1表示登录用户,$2表示进程ID
xargs kill -9 xargs 可以读入 stdin 的资料,并且以空白字元或断行字元作为分辨,将 stdin 的资料分隔成为 arguments 。 因为是以空白字元作为分隔,所以,如果有一些档名或者是其他意义的名词内含有空白字元的时候, xargs 可能就会误判了,如果需要处理特殊字符,需要使用-0或其他参数进行处理。

xargs及常见用法

https://blog.csdn.net/csyuanA/article/details/76408836
http://czmmiao.iteye.com/blog/1949225

shell 搜索占用端口的进程并杀死

kill -9 $(lsof -i tcp:8080 -t)

杀死 8080 的进程

猜你喜欢

转载自blog.csdn.net/wljk506/article/details/83582068