跳转到主内容
趣航编程网 - 趣学编程,启航技术之路!

Linux怎么强制杀死进程_Linux kill与pkill命令教程【应急】

强制杀死Linux无响应进程的方法包括:一、kill -9配合PID;二、pkill按名称批量终止;三、killall按程序名终止;四、pgrep结合kill精确筛选;五、xkill点击终止GUI假死程序。 如果您在Linux系统中遇到进程无响应或无法正常退出的情况,则可能是该进程已进入不可中断状态或拒绝接收常规终止信号。以下是强制杀死进程的多种方法: 一、使用kill命令配合-9参数强制终止 kill命令通过向进程发送信号实现控制,-9参数对应SIGKILL信号,该信号无法被进程捕获或忽略,可直接终止目标进程及其占用的资源。 1、执行
ps -aux | grep 进程名
查找目标进程的PID。 2、确认PID后,运行
kill -9 PID
发送强制终止信号。 3、若需同时终止多个进程,可在命令后追加多个PID,例如:
kill -9 1234 5678 9012
。 4、如需终止某进程及其所有子进程,可先用
pgrep -P 父PID
获取子进程列表,再逐个执行
kill -9
,或使用
killall -9 -g 父PID
(部分系统支持)。 二、使用pkill按名称批量终止进程 pkill命令依据进程名、用户、终端等属性匹配并发送信号,无需手动查找PID,适合快速终止同名多个实例。 1、执行
pkill 进程名
向所有匹配进程发送默认TERM信号。 2、若TERM无效,改用
pkill -9 进程名
强制终止全部匹配进程。 3、添加
-u 用户名
限定仅终止指定用户启动的进程,例如:
pkill -9 -u nginx php-fpm
。 4、使用
-f
参数匹配完整命令行,适用于带参数启动的进程,例如:
pkill -9 -f "python3 server.py"
。 三、使用killall按程序名终止进程组 killall命令根据可执行文件名终止所有同名进程,与pkill功能相似但匹配逻辑略有差异,对大小写敏感且默认不匹配路径。 1、运行
killall 进程名
尝试优雅终止所有匹配进程。 2、若进程未退出,执行
killall -9 进程名
强制终止。 3、添加
-i
参数启用交互模式,在每次终止前提示确认,避免误操作。 4、使用
-v
参数显示详细操作结果,例如成功终止几个进程、哪些进程不存在等。 四、使用pgrep结合kill精确筛选后终止 pgrep命令专用于查找匹配条件的进程PID,输出结果可直接交由kill处理,组合使用能提升准确性和安全性。 1、执行
pgrep -f "关键词"
查找命令行中含指定字符串的进程PID。 2、将pgrep结果传给kill:例如
kill -9 $(pgrep -f "node server.js")
。 3、使用
pgrep -u 用户名 进程名
限制用户范围,防止影响其他用户进程。 4、添加
-l
参数列出进程名与PID对照表,便于人工核对后再执行终止操作。 五、使用xkill终止图形界面无响应程序 xkill是X Window系统专用工具,通过鼠标点击方式选择目标窗口,适用于GUI程序假死且无法通过终端命令定位PID的场景。 1、在终端中输入
xkill
并回车,光标变为 十字准星 。 2、将准星移至目标应用窗口任意位置,单击左键即可向其发送终止信号。 3、若误点其他窗口,可按 Esc 键取消当前操作。 4、该命令仅作用于前台可见窗口,对后台服务类进程无效。

相关文章