其实 kill 这个指令,我前面的随笔说过,结果,不经常用。又忘记啦。好烦呦~
今天再单独记录一下 :Linux 根据进程名称的一部分 kill 掉进程吧:
背景:
[root@byx-linux ~]# ps -ef|grep [m]agic_Linux32 root 3025 1 0 2月21 ? 00:06:51 ./magic_Linux32 /r ./ /e /aaa/pack_data/lib_aaa32.pak/aaa/start_aaa.o /b /aaa/pack_data/lib_aaa32.pak root 23530 1 0 01:03 ? 00:04:43 ./magic_Linux32 /r ./ /e /aaa/pack_data/lib_aaa32.pak/aaa/start_aaa.o /b /aaa/pack_data/lib_aaa32.pak root 24100 1 0 01:03 ? 00:03:43 ./magic_Linux32 /r ./ /e /dba/pack_data/lib_dba32.pak/dba/start_dba.o /b /dba/pack_data/lib_dba32.pak root 24665 1 0 01:03 ? 00:03:58 ./magic_Linux32 /r ./ /e /ccs/pack_data/lib_ccs32.pak/ccs/start_ccs.o /b /ccs/pack_data/lib_ccs32.pak root 26050 1 0 01:04 ? 00:07:16 ./magic_Linux32 /r ./ /e /csa/pack_data/lib_csa32.pak/csa/start_csa.o /b /csa/pack_data/lib_csa32.pak
我需要 杀死,也就是kill magic_Linux32 的所有进程。
这里,大家要知道,什么是进程名称,和参数。
有朋友,会对着最后的,pak文件进行 killall 操作。
[root@byx-linux ~]# killall -9 lib_csa32.pak lib_csa32.pak no process found (也就是没有发现进程)
正确做法:
[root@byx-linux ~]# killall -9 magic_Linux32
知识点:
kill 后面跟的 是 进程 ID。
killall 后面跟的是 进程的名称。