
文档教程知识库【免费下载链接】tldrCollaborative cheatsheets for console commands .项目地址https://gitcode.com/GitHub_Trending/tl/tldr点击查看免费下载导读本文以 tldr 开源仓库中的pages.ar/linux/kill.md阿拉伯语文档为骨架系统讲解 Linuxkill命令的完整用法默认信号终止、信号列表查询、后台任务结束、进程组发信号以及 SIGHUP、SIGINT、SIGKILL、SIGSTOP、SIGUSR1 等关键信号的实战场景。读完本文你将能准确区分优雅退出与强制杀死理解为什么除了 SIGKILL 和 SIGSTOP 之外的所有信号都能被进程拦截这一 tldr 页面反复强调的事实并在日常运维中安全、精准地控制进程生命周期。kill 命令的本质给进程发信号而非杀死kill的名字有误导性——它真正的功能是向一个进程Process发送信号Signal而终止进程只是最常用的默认行为。阿拉伯语文档开宗明义يرسل إشارة إلى عملية (Process)، وعادةً ما يكون ذلك متعلقًا بإيقاف العملية. 向进程发送信号通常与停止该进程相关。信号是 Unix/Linux 操作系统与进程通信的异步机制。kill命令借助signal(7)系统调用把指定的信号编号或名称投递给目标进程接收方可以选择默认行为多数信号默认是终止进程、忽略、或注册处理器执行清理逻辑。tldr 页面特别强调了一个关键事实除了 SIGKILL9和 SIGSTOP19之外所有信号都可以被进程拦截以执行干净退出clean exit。这两条信号是内核直接执行、进程没有机会处理的不可拦截信号——这正是后文区分优雅终止与强制杀死的理论根基。这一表述同时出现在pages/common/kill.md与pages/linux/killall.md中说明它不仅是阿拉伯语页面的个例而是整个 tldr 项目对信号语义的一致表述。完整命令速查继承自阿拉伯语文档的 8 个核心用法kill的基本语法是kill [选项] 目标其中目标通常为 PID进程 ID。以下是pages.ar/linux/kill.md覆盖的 8 个实战场景每条都对应一个可直接复制使用的命令模板{{ }}内为 tldr 占位符使用时替换为真实值1. 默认 SIGTERM 终止kill {{process_id}}不带信号参数时kill发送默认的SIGTERM15终止信号。SIGTERM 是请求式终止——进程可拦截它先保存数据、释放资源再退出。这是日常关闭程序的推荐姿势只有进程迟迟不退出时才需要升级手段。2. 列出信号值与名称kill {{-l|-L|--table}}不同kill实现提供的选项不同tldr 页面明确提示了这一点GNU coreutils 的kill支持-l列出信号名、-L列出信号名与编号对照表而--table则是与-L等价的长选项。输出的信号名在使用时不带SIG前缀例如-l输出中的HUP、INT、KILL直接对应命令中的-HUP、-INT、-KILL。3. 终止后台任务Jobkill %{{job_id}}%job_id是 shell 作业控制语法指向当前 shell 的后台任务编号如%1、%2可用jobs命令查看。这里的%前缀让kill按作业号而非进程号寻址在交互式终端管理后台任务时非常实用。4. SIGHUP挂断信号kill {{[-1|-HUP]}} {{process_id}}SIGHUP1挂断传统上在终端断开hang up时发给进程。tldr 页面点出了它的一个重要特性许多守护进程Daemons收到 SIGHUP 后会重新加载配置而不是退出所以kill -HUP常被当作平滑重载的运维技巧。仓库中pages/linux/daemon.md展示了守护进程的另一个视角用daemon -n name --stop以 SIGTERM 停止守护进程与 SIGHUP 的重载语义形成互补。5. SIGINT中断信号kill {{[-2|-INT]}} {{process_id}}SIGINT2中断正是用户在终端按下Ctrl c时产生的信号。tldr 页面特别注明这通常由用户按下Ctrl c触发——也就是说kill -2等价于给进程补发一次 CtrlC。与 SIGTERM 一样进程可以拦截 SIGINT 并在退出前清理。6. SIGKILL强制杀死kill {{[-9|-KILL]}} {{process_id}}SIGKILL9是最后手段它请求操作系统立即终止进程且进程没有机会捕获或处理该信号。这解释了页面为何反复强调不可拦截。使用-9的代价是进程可能来不及保存状态因此应仅在 SIGTERM 无效时使用。需要按进程名而非 PID批量强制杀死时可参照pages/common/killall.md的killall -9 process_name。7. SIGSTOP暂停而非结束kill {{[-19|-STOP]}} {{process_id}}SIGSTOP19不结束进程而是让操作系统将其暂停pause直到收到SIGCONT继续信号才恢复运行。这是信号语义里停止与终止的重要区分-STOP只是挂起配合 SIGCONT 可实现进程的临时冻结与唤醒。仓库pages/common/suspend.md展示了类似场景——嵌套 shell 中用suspend挂起当前 shell 后可在另一个终端执行pkill -CONT bash恢复。8. SIGUSR1发送到整个进程组kill {{[-10|-SIGUSR1]}} -{{group_id}}这里有两个细节值得注意其一SIGUSR110是用户自定义信号常用于应用层自定义事件如通知某个服务刷新缓存其二目标为负数-group_id时kill向拥有该 GID 的整个进程组发送信号实现一次性通知一组相关进程。类似的组/批量语义也体现在pages/common/pkill.md中——pkill -SIGUSR1 process_name可以按名称匹配并向所有匹配进程发送该信号。信号数字与名称的对应关系速查表结合上文 8 个命令tldr 文档实际覆盖的信号可整理如下注意信号编号在部分平台上可能有差异使用前可用kill -l确认或直接使用SIG前缀的名称形式以获得更好的可移植性编号名称场景是否可拦截1SIGHUP挂断/守护进程重载可2SIGINTCtrlC 中断可10SIGUSR1用户自定义事件可15SIGTERM默认终止优雅退出可19SIGSTOP暂停进程不可9SIGKILL强制杀死不可—SIGCONT恢复被暂停的进程可仓库源码视角tldr 页面中的信号场景如何被验证与组织在 tldr 仓库中kill家族的命令页面形成了一个完整的信号控制矩阵彼此印证pages/linux/kill.md与pages/common/kill.md是英文原版覆盖全部 8 种场景-l列出信号名、-1/-HUP、-2/-INT、-9/-KILL、-19/-STOP、SIGUSR1进程组广播pages/common/killall.md提供按进程名精确匹配的批量终止含-i交互确认、-2/-SIGINT、-9/-SIGKILLpages/common/pkill.md提供按名称/完整命令行模式匹配的精确信号投递pages/common/trap.md从接收方视角补全了信号知识shell 中trap echo Caught signal SIGHUP HUP可以捕获并处理信号佐证了除 SIGKILL/SIGSTOP 外信号可被拦截的表述pages/linux/systemctl-kill.md展示 systemd 体系的同类能力systemctl kill -s 1 --kill-whom main unit可只向 unit 的主进程发送 SIGHUP。这些页面共同说明kill是信号体系的投递端而pages/common/trap.md、pages/linux/daemon.md则是接收端实践理解两端才能完整掌握进程控制。tldr 格式规范与阿拉伯语页面细节pages.ar/linux/kill.md遵循 tldr 社区的标准页面结构#标题、简述与帮助链接、以-开头的说明 反引号包裹的命令示例。其中的{{ }}是 tldr 特有的占位符语法表示用户需要替换的变量如{{process_id}}并由scripts/check-errors.sh等脚本统一校验占位符、反引号配对、措辞与字符规范。关于阿拉伯语页面contributing-guides/translation-templates/common-arguments.md有一条特殊约定值得了解Placeholders in Arabian (ar) and Farsi (fa) pages shouldnt be translated to prevent flipped text when reading. 阿拉伯语和波斯语页面中的占位符不应翻译以免阅读时文字翻转。这正是pages.ar/linux/kill.md中{{process_id}}、{{job_id}}、{{group_id}}等占位符保持英文的原因——RTL从右到左语言环境下翻译占位符会导致文本渲染错乱。这也是 tldr 多语言协作仓库中一项非常具体且可操作的本地化工程实践。实践小结何时用哪种信号把 tldr 的 8 个用法串成决策流程可得到一套安全的进程管理准则优先kill pidSIGTERM给进程优雅退出的机会守护进程重载用kill -HUP pid很多服务以重载响应不必重启前台程序中断用kill -2 pid等价于补发 CtrlC需要暂停用kill -19 pid配合 SIGCONT 可恢复而非结束确认无效、必须强制时用kill -9 pid接受丢失清理逻辑的风险按名称操作时改用killall/pkill见pages/common/killall.md、pages/common/pkill.md不确定信号编号时kill -l或-L/--table随时可查且使用名称形式如-HUP比数字更具可移植性。掌握这一套信号组合拳就等于掌握了 Linux 进程生命周期管理的核心工具箱——而这正是pages.ar/linux/kill.md这份 tldr 页面想要传递的、去除了冗长手册后的精华。赞分享文档教程知识库【免费下载链接】tldrCollaborative cheatsheets for console commands .项目地址https://gitcode.com/GitHub_Trending/tl/tldr点击查看免费下载相关推荐tldr 项目中的 kill 命令详解信号机制、用法速查与中文实践指南tldr 项目中的 kill 命令详解信号机制、用法速查与中文实践指南 kill 是类 Unix 系统中向进程发送信号的经典命令其核心用途是优雅或强制地终止文档教程知识库终极指南微信QQ防撤回补丁的技术架构与版本适配实战终极指南微信QQ防撤回补丁的技术架构与版本适配实战 RevokeMsgPatcher是一款专为Windows平台设计的微信、QQ、TIM消息防撤回补丁工具通桌面应用即时通讯linux-command 仓库 cp 命令详解Linux 文件复制的完整实战指南linux command 仓库 cp 命令详解Linux 文件复制的完整实战指南 本指南以 linux command 仓库中的 command/cp.md文档教程上一篇GraceFacebook 的遗留代码迁移工具下一篇Frontail 使用指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考