在 Linux 中,通常所说的“关闭 PID”实际上是指终止(Kill)某个进程,PID(Process ID)是进程的唯一标识符,你不能直接“关闭”一个数字,而是通过 PID 来操作对应的进程。
以下是几种常用的方法来终止指定 PID 的进程:
使用 kill 命令(最常用)
kill 命令默认发送 SIGTERM(信号 15)信号,请求进程正常退出。
kill <PID>
示例:
kill 1234
注意: 如果进程没有响应,可以使用强制终止信号(见下文)。
强制终止进程
如果进程无响应或无法通过 SIGTERM 终止,可以使用 SIGKILL(信号 9)强制杀死进程。
kill -9 <PID> # 或 kill -SIGKILL <PID>
示例:
kill -9 1234
⚠️ 警告:
kill -9会立即终止进程,可能导致数据丢失或未保存的工作丢失,请仅在必要时使用。
查找 PID 并终止(结合 ps 或 pgrep)
如果你不知道 PID,但知道进程名,可以先查找 PID,再终止它。
使用 ps 和 grep
ps aux | grep <进程名>
找到 PID 后,使用 kill 命令终止。
使用 pgrep 直接查找并终止
# 查找所有匹配进程名的 PID pgrep <进程名> # 直接根据进程名终止进程 pkill <进程名>
示例:
# 终止所有名为 "python" 的进程 pkill python
使用 killall 命令
killall 可以根据进程名而非 PID 来终止所有匹配该名称的进程。
killall <进程名>
示例:
# 终止所有名为 "chrome" 的进程 killall chrome
常见信号说明
| 信号 | 编号 | 说明 |
|---|---|---|
SIGTERM |
15 | 默认信号,请求进程正常退出,允许进程清理资源。 |
SIGKILL
|
9 | 强制终止,进程无法捕获或忽略此信号。 |
SIGHUP |
1 | 通常用于重新加载配置文件(如 Nginx、Apache)。 |
如何查看当前运行的进程?
你可以使用以下命令查看正在运行的进程及其 PID:
# 查看所有进程 ps aux # 按 CPU 或内存排序查看 ps aux --sort=-%cpu # 使用 top 命令(交互式) top
- 正常终止:
kill <PID> - 强制终止:
kill -9 <PID> - 按名称终止:
pkill <进程名>或killall <进程名>
请谨慎使用 kill -9,避免造成数据损坏或系统不稳定。
首发原创文章,作者:世雄 - 原生数据库架构专家,如若转载,请注明出处:https://idctop.com/article/479736.html



