29
2024
10
15:24:40

Linux如何kill掉所有java进程呢?

在Linux使用中,有时需要批量结束Java进程以提高效率。通过`ps -ef | grep java`查找Java进程,`grep -v grep`排除grep自身进程,`awk '{print $2}'`提取进程ID,最后用`xargs kill -9`命令杀死这些进程。

 在使用linux过程中,你可能需要批量干掉ava进程的需求,使用它可以工作效率翻倍。

ps -ef | grep java | grep -v grep | awk '{print $2}' | xargs kill -9

参数解释(个人理解):

ps -ef | grep java:查询所有java进程

grep -v grep: 为了去除包含grep的进程行 ,避免影响最终数据的正确性 。

awk '{print $2}': 以空格作为分隔符,打印第2个字段(也就是进程号)

xargs kill -9:将前面获取到的进程号通过空格分割,传递给kill -9,杀死所有进程。





【kill】Centos/Linux 如何杀死那该死的进程?


简介


基础语法


PID的五种情况 


选项介绍


基本用法


kill中的信号


注意事项


简介

        系统版本:Centos7.6


        kill 命令发送指定的信号到指定的进程或者进程组。如果该信号没有指定,则发送SIGTERM信号(15),即终止信号。如果SIGTERM信号(15)无法终止,可使用SIGKILL(9)信号尝试结束进程。现在的大多数命令都会内置一个kill函数,用法和上面所描述的非常相似。如果SIG为0,则不发送任何信号,但是仍会执行错误检查。


基础语法

kill [option] <PID> # <PID>为需要终止进程的ID号

PID的五种情况 

PID 定义

n n大于0则向对应PID的进程发送信号

0 向所有进程都发送信号

-1 所有PID大于1的进程都将收到信号

-n 这里的n大于1, 在这种情况下,发信号给属于进程组 n 的进程。如果给定一个负的参数,那么信号必须首先声明, 否则它会被当作信号发送出去。

命令名 使用该名称调用的所有进程都将收到信号

选项介绍

选项 选项说明

-s,--signal 指定要发送的信号,可以使用信号名或数字给出,kill命令中的signal请看下面的小节,Linux中的信号详细介绍请查看Linux信号的行为说明。

-l,--list 列出可用的信号的名称。此选项具有可选参数,该参数将信号编号 (数字) 转换为信号名称,反之亦然。这可以在 /usr/include/linux/sig‐nal.h 中找到。

-L,--table 在表格中列出信号名称。

-a,--all 当处理当前进程时,不限制命令名和进程号的对应关系。

-p,--pid 只打印命名进程的PID,而不发送信号给相应的进程。

-q,--queue 使用 sigqueue(2) 而不是 kill(2),选项后跟随的为一个信号,用整数表示该信号。

基本用法

1、终止进程


> kill 4682

> kill 4682 7492 8810 2314

2、发送指定信号给指定进程


> kill -s 2 4682 # 2为信号SIGINT

> kill -s SIGINT 4682

3、强杀进程或进程组


强杀PID:4682进程

> kill -9 4682

 

强杀PID:4682所在的整个进程组

> kill -9 -4682

4、查看所有可用信号


> kill -l

> kill --list

 

显示信号编号为11的信号名称

> kill -l 11

5、 杀死指定用户所有进程


过滤出username用户的进程,然后强制结束掉它

> kill -9 $(ps -ef | grep username)

注:4682、7492、8810、2314是拟定的一个PID


kill中的信号

 信号的详细介绍请查看信号的行为说明 


 1) SIGHUP      2) SIGINT     3) SIGQUIT     4) SIGILL     5) SIGTRAP

 6) SIGABRT     7) SIGBUS     8) SIGFPE     9) SIGKILL     10) SIGUSR1

11) SIGSEGV     12) SIGUSR2     13) SIGPIPE     14) SIGALRM     15) SIGTERM

16) SIGSTKFLT   17) SIGCHLD     18) SIGCONT     19) SIGSTOP     20) SIGTSTP

21) SIGTTIN     22) SIGTTOU     23) SIGURG     24) SIGXCPU     25) SIGXFSZ

26) SIGVTALRM   27) SIGPROF     28) SIGWINCH 29) SIGIO     30) SIGPWR

31) SIGSYS     34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3

38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8

43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13

48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12

53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7

58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2

63) SIGRTMAX-1 64) SIGRTMAX

注意事项

1、使用kill命令结束某一个进程时要确保具有该进程的相应权限,否则可能无法终止该进程。


2、某些进程可能需要多次发送信号才能终止,例如一些守护进程。


3、强制终止进程可能会导致数据丢失、程序损坏或者其他一些不可预知的副作用,请谨慎使用。 

————————————————





推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://hqyman.cn/post/8235.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: