在 Debian(以及大多数 Linux 系统)中,结束后台进程常用以下几种方法,按使用场景从简单到进阶说明:
killkill PID
SIGTERM(15),礼貌结束进程kill 1234
kill -9 PID
或
kill -KILL PID
SIGKILL,进程无法忽略,慎用pkillpkill 进程名
示例:
pkill nginx
强制结束:
pkill -9 nginx
killallkillall 进程名
示例:
killall python3
⚠️ 注意:killall 会结束所有同名进程
& 或 nohup)jobs
输出示例:
[1]+ Running python3 server.py &
kill %1
或强制:
kill -9 %1
%1表示jobs中的任务编号
ps + grepps aux | grep 进程名
pgrep(直接拿 PID)pgrep 进程名
如果是系统服务(不是手动后台运行):
systemctl stop 服务名
示例:
systemctl stop nginx
查看状态:
systemctl status nginx
| 场景 | 推荐命令 |
|---|---|
| 知道 PID | kill PID |
| 知道名字 | pkill 名字 |
| shell 后台任务 | kill %编号 |
| 系统服务 | systemctl stop |
| 杀不掉 | kill -9 |
如果你愿意,可以告诉我:
&、nohup、脚本、服务)我可以给你精确的一条命令。