一、基础选项说明
1. 信号发送核心选项
选项 功能说明 示例与场景 来源
**-s / --signal** 指定发送的信号(名称或编号) kill -s SIGKILL 1234 强制终止进程
**-p** 仅打印进程 PID,不发送信号 kill -p 5678 输出 PID 但不操作
**-l / --list** 列出所有可用信号名称及编号 kill -l 显示完整信号列表
2. 进程筛选与操作选项
选项 功能说明 示例与场景 来源
**-u** 按用户终止进程(需权限) kill -u root 终止所有 root 用户进程
**-a** 不限制命令名与进程号的对应关系 kill -a 1234 允许非精确匹配
**-c** 显示命令详细信息(如 PID、状态) kill -c 1234 输出操作结果
二、信号类型与使用场景
1. 常用信号列表
信号名称/编号 功能描述 典型用途场景 来源
SIGTERM (15) 默认信号,请求进程正常退出 终止普通进程(如 kill 1234)
SIGKILL (9) 强制终止进程,无法被捕获或忽略 进程无响应时使用(如 kill -9 1234)
SIGHUP (1) 重启进程或重新加载配置 重启守护进程(如 kill -HUP nginx)
SIGSTOP (19) 暂停进程执行 暂停进程(如 kill -STOP 1234)
SIGCONT (18) 恢复被暂停的进程 恢复进程(如 kill -CONT 1234)
2. 信号操作示例
bash
#发送 SIGTERM 信号终止进程
kill 1234
强制终止进程
kill -9 5678
#重启进程
kill -HUP 9012
#暂停进程
kill -STOP 3456
#恢复进程
kill -CONT 7890
三、高级功能选项
1. 进程组处理
选项 功能说明 示例与场景 来源
**-g / --pgroup** 按进程组 ID 终止所有进程 kill -g 4567 终止组内所有进程
**-** 向当前 Shell 启动的所有后台进程发送信号 kill -SIGTERM - 终止所有后台作业
2. 批量操作
选项 功能说明 示例与场景 来源
**-** 与 killall 或 pkill 结合使用,按名称终止进程 pkill -SIGKILL vim 终止所有 vim 进程
**-** 与 killall 结合使用,按正则表达式匹配进程名 killall -r “.*” 终止所有匹配的进程
四、安全与最佳实践
优先使用 SIGTERM:允许进程清理资源,避免数据丢失。
谨慎使用 SIGKILL:强制终止可能导致文件系统损坏或数据不一致。
权限限制:普通用户只能终止自身进程,需 sudo 提升权限。
进程查找技巧:
ps aux | grep process_name 查找 PID
pgrep process_name 直接获取 PID
五、完整选项速查表
选项分类 选项列表 来源
信号相关 -s, -l, -p
进程筛选 -u, -a, -g
批量操作 -, --pgroup
辅助功能 -c, -q, -v
3704

被折叠的 条评论
为什么被折叠?



