Linux终止sh脚本,root权限秒停法

快速终止方法

Ctrl + C(前台进程)

  • 如果脚本正在终端前台运行(直接可见输出):
    • 按下组合键 Ctrl + C 立即终止进程。
    • 适用场景:脚本卡死或需手动中断。

Ctrl + Z + kill(暂停后终止)

  • Ctrl + C 无效:
    1. Ctrl + Z 暂停进程。
    2. 输入 jobs 查看暂停任务的编号(如 [1])。
    3. 终止任务:
      kill %1  # 将1替换为实际任务编号

通过进程ID(PID)终止

查找进程PID

  • 打开新终端,使用 pspgrep 定位进程:

    ps aux | grep "脚本名"  # ps aux | grep test.sh
    • 输出第二列为PID(如 12345)。
  • 或直接使用:

    pgrep -f "脚本名"      # pgrep -f test.sh

用 kill 命令终止

  • 根据PID发送终止信号:
    kill PID              # 默认发送SIGTERM(15),允许进程清理退出
  • 若进程未响应:
    kill -9 PID           # 发送SIGKILL(9)强制终止(慎用)

批量终止相关进程

终止同一脚本的所有进程

   pkill -f "脚本名"       # pkill -f test.sh
  • 或使用 killall
    killall -9 sh         # 终止所有sh进程(谨慎!可能影响其他脚本)

终止子进程

  • 若脚本启动了子进程(如 sleep):
    pkill -P 父进程PID     # 终止指定父进程的所有子进程

特殊场景处理

后台进程终止

  • 启动时添加 & 的脚本(如 sh test.sh &):
    1. jobs 查看后台任务编号。
    2. 终止任务:
      kill %任务编号      # 如 kill %1

进程无响应(僵尸进程)

  • kill -9 无效:
    1. 重启系统或结束父进程(如终端)。
    2. 检查进程状态:
      ps aux | grep defunct

注意事项

  1. 权限要求

    • 普通用户只能终止自己的进程。
    • 系统进程需 sudo 权限:
      sudo kill -9 PID
  2. 信号区别

    • SIGTERM(15):友好终止,允许保存数据。
    • SIGKILL(9):强制终止,可能导致资源未释放(最后手段)。
  3. 生产环境慎用 kill -9

    • 可能引发数据损坏,优先尝试 killpkill

总结步骤

  1. 尝试 Ctrl + C → 无效则用 Ctrl + Z + kill %任务号
  2. 查询PID:ps aux | grep "关键词"pgrep -f "关键词"
  3. 终止进程:kill PID → 顽固进程用 kill -9 PID
  4. 批量操作:pkill -f "脚本名"

引用说明参考Linux内核文档(kernel.org)及《Linux命令行与Shell脚本编程大全》中的进程管理规范,操作前请确认权限,避免误杀系统关键进程。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/7470.html

(0)
酷番叔酷番叔
上一篇 2025年7月15日 20:56
下一篇 2025年7月15日 21:08

相关推荐

  • 如何将ASP代码转为纯文本格式?

    在数据处理和文件转换的场景中,将ASP(Active Server Pages)文件转换为纯文本格式是一项常见需求,ASP文件通常包含HTML代码、服务器端脚本(如VBScript或JavaScript)以及动态生成的数据,而纯文本格式则去除了所有标记和脚本,仅保留可见的字符内容,这种转换在日志分析、数据提取或……

    2025年11月23日
    1300
  • 如何启动MongoDB?不同系统命令不同!

    Windows 系统启动命令通过命令行启动打开命令提示符(管理员权限)切换到 MongoDB 的安装目录(默认路径): cd C:\Program Files\MongoDB\Server\7.0\bin执行启动命令(需提前创建数据存储目录 C:\data\db): mongod.exe –dbpath &q……

    2025年7月10日
    8400
  • ASP邮件群发如何高效实现?步骤、技巧及注意事项有哪些?

    ASP邮件群发是指利用ASP(Active Server Pages)技术,结合邮件发送组件或接口,实现向多个收件人批量发送邮件的功能,作为微软早期推出的服务器端脚本环境,ASP因其简单易用、与Windows服务器环境深度集成等特点,曾被广泛应用于企业营销、会员通知、电子期刊等场景,随着反垃圾邮件技术的升级和法……

    2025年11月1日
    2600
  • AI工具如何帮你节省3小时?

    自定义用户界面(CUI)是一种核心方法,允许用户根据个人需求和工作习惯调整软件或系统的界面布局、功能选项和视觉元素,以提升操作效率和使用体验。

    2025年6月20日
    8300
  • ASP读模板,如何实现模板文件的正确读取?

    在ASP(Active Server Pages)开发中,“读模板”是一种常见的动态页面生成技术,其核心思想是将页面的静态结构与动态数据分离,通过读取预设的模板文件,将动态内容填充到模板的指定位置,最终生成完整的HTML页面返回给客户端,这种方法不仅提高了代码的可维护性,还实现了前端设计与后端逻辑的解耦,尤其适……

    2025年11月2日
    2800

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信