- 一、ps -ef
- 二、grep java
- 三、grep job
- 四、grep -v grep
- 五、awk '{print $2}'
- 六、xargs kill -9
当我们要杀掉某个应用服务进程时,一般会执行以下命令:
ps -ef | grep java | grep job | grep -v grep | awk '{print $2}' | xargs kill -9
以下分解来进行说明。
一、ps -efps:查看服务器的进程信息
选项:
-e:等价于 -A,表示列出全部的进程
-f:显示全部的列
grep:查找含有指定文本的行
grep java:查找含有 ‘java’ 的行
grep:查找含有指定文本的行
grep job:查找含有 ‘job’ 的行
执行 ps -ef | grep java | grep job 的结果如下:
[root@ecs-uat ~]# ps -ef|grep java |grep job root 21272 1 0 Apr27 ? 00:16:28 java -jar xxl-job-admin-2.3.1-SNAPSHOT.jar root 21368 1 0 Apr27 ? 00:09:55 java -jar xxl-job-executor-sample-springboot-2.3.1-SNAPSHOT.jar四、grep -v grep
grep -v:反向查找
grep -v grep:查找不含有 grep 的行
$2:第二个字段
print $2:打印第二个字段
awk ‘{print $2}’:一行一行的读取显示的信息, 以空格作为分隔符,打印第二个字段
执行 ps -ef | grep java | grep job | grep -v grep | awk ‘{print $2}’ 的结果如下:
[root@ecs-uat ~]# ps -ef | grep java | grep job | grep -v grep | awk '{print $2}'
21272
21368
六、xargs kill -9
xagrs:接收管道传过来的参数
xargs kill -9:将前面获取到的进程号通过空格分割,传递给 kill -9,杀死所有进程
执行 ps -ef | grep java | grep job | grep -v grep | awk ‘{print $2}’ | xargs kill -9 会将 21272、21368 进程杀死。



