信號捕捉

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
相關文章
相關標籤/搜索