信号捕捉

trap:bash

trap ‘echo press ctrl+c’  2  :捕捉停止信号,可是不退出。

         #!/bin/bash
         ####
         ####
         trap ' '    2  15  #捕捉2信号和15信号
         trap  -p            #列出自定义信号操做
         for((i=1;i<=10;i++));do
                echo  $i
                        sleep  1
         done

         trap  ' '    2  15  #忽略操做   
         trap  -p
         for((i=1;i<=10;i++));do
                echo  $i
                        sleep  1
         done

         trap  ' '    2  15  #忽略操做   
         trap  -p
         for((i=1;i<=10;i++));do
                echo  $i
                        sleep  1
         done

         trap  '-'    2  15  #恢复2信号和15信号的意义   
         trap  -p
         for((i=1;i<=10;i++));do
                echo  $i
                        sleep  1
         done

         trap  finish  EXIT:脚本退出时,执行finish函数

         #!/bin/bash
         ####
         ####
         finish(){
                                 echo "finish"
         }

    trap finish  exit

            for((i=1;i<=10;i++));do
                   let sum+=i
                         sleep 1
            done
          echo  $sum
相关文章
相关标签/搜索