• 脚本优先级控制

    • 可以使用 nice 和 renice 调整脚本优先级
    • 避免出现 “不可控的” 死循环
      • 死循环导致CPU占用过高
      • 死循环导致死机

    fork 炸弹例子:

    func() {func | func& }; func

    .(){.|.&};.

  • 捕获信号

    • trap

    • 捕获信号脚本的编写

      • kill 默认会发送15号信号给应用程序
      • ctrl + c 发送2号信号给应用程序
      • 9号信号不可阻塞
    • eg:

      #!/bin/bash
      
      # singal demo
      
      trap "echo singal 15" 15
      
      trap "echo singal 2" 2
      
      echo $$
      
      while :
      do
          :   
      done
      
    • 场景:服务器备份,不能轻易使用15 和 2 号信号杀死