Linux之kill命令

千磨万击还坚劲,任尔东西南北风。这篇文章主要讲述Linux之kill命令相关的知识,希望能为你提供帮助。
命令格式
kill[参数][进程号
命令功能
命令参数

  • -l信号,若果不加信号的编号参数,则使用“-l”参数会列出全部的信号名称
  • -a当处理当前进程时,不限制命令名和进程号的对应关系
  • -p指定kill 命令只打印相关进程的进程号,而不发送任何信号
  • -s指定发送信号
  • -u指定用户
命令说明
  • kill命令可以带信号号码选项,也可以不带。如果没有信号号码,kill命令就会发出终止信号(15),这个信号可以被进程捕获,使得进程在退出之前可以清理并释放资源。也可以用kill向进程发送特定的信号。例如:kill -2 123
  • 它的效果等同于在前台运行PID为123的进程时按下Ctrl+C键。但是,普通用户只能使用不带signal参数的kill命令或最多使用-9信号。
  • kill可以带有进程ID号作为参数。当用kill向这些进程发送信号时,必须是这些进程的主人。如果试图撤销一个没有权限撤销的进程或撤销一个不存在的进程,就会得到一个错误信息。
  • 可以向多个进程发信号或终止它们。
  • 当kill成功地发送了信号后,shell会在屏幕上显示出进程的终止信息。有时这个信息不会马上显示,只有当按下Enter键使shell的命令提示符再次出现时,才会显示出来。
  • 应注意,信号使进程强行终止,这常会带来一些副作用,如数据丢失或者终端无法恢复到正常状态。发送信号时必须小心,只有在万不得已时,才用kill信号(9),因为进程不能首先捕获它。要撤销所有的后台作业,可以输入kill 0。因为有些在后台运行的命令会启动多个进程,跟踪并找到所有要杀掉的进程的PID是件很麻烦的事。这时,使用kill 0来终止所有由当前shell启动的进程,是个有效的方法。
列出所有信号名称
> kill -l 1) SIGHUP2) SIGINT3) SIGQUIT4) SIGILL5) SIGTRAP 6) SIGABRT7) SIGBUS8) SIGFPE9) SIGKILL10) SIGUSR1 11) SIGSEGV12) SIGUSR213) SIGPIPE14) SIGALRM15) SIGTERM 16) SIGSTKFLT17) SIGCHLD18) SIGCONT19) SIGSTOP20) SIGTSTP 21) SIGTTIN22) SIGTTOU23) SIGURG24) SIGXCPU25) SIGXFSZ 26) SIGVTALRM27) SIGPROF28) SIGWINCH29) SIGIO30) SIGPWR 31) SIGSYS34) SIGRTMIN35) SIGRTMIN+136) SIGRTMIN+237) SIGRTMIN+3 38) SIGRTMIN+439) SIGRTMIN+540) SIGRTMIN+641) SIGRTMIN+742) SIGRTMIN+8 43) SIGRTMIN+944) 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-956) SIGRTMAX-857) SIGRTMAX-7 58) SIGRTMAX-659) SIGRTMAX-560) SIGRTMAX-461) SIGRTMAX-362) SIGRTMAX-2 63) SIGRTMAX-164) SIGRTMAX

  • HUP1终端断线
  • INT2中断(同 Ctrl + C)
  • QUIT3退出(同 Ctrl + \\)
  • TERM15终止
  • KILL9强制终止
  • CONT18继续(与STOP相反, fg/bg命令)
  • STOP19暂停(同 Ctrl + Z)
得到指定信号的数值
> kill -l KILL 9

先用ps查找进程,然后用kill杀掉
> ps -ef | grep java root1693410 Feb25 ?00:18:13 java -jar demo.jar//彻底杀死该进程 > kill -9 16934

强制杀死所有和java相关的所有进程
> kill -9 $(ps -ef | grep java)

强制杀死deploy用户起的进程
> kill -u deploy

init进程是不可杀的
> kill -9 1

【Linux之kill命令】原文链接:https://rumenz.com/rumenbiji/linux-kill.html
微信公众号:入门小站
Linux之kill命令

文章图片


    推荐阅读