在Shell脚本中使用Trap捕获相关信号进行hook

from http://steve-parker.org/sh/trap.shtml

 

trap指令可以用来捕获相关信号,并运行指定的代码

 

例如

 

#!/bin/sh

 

trap cleanup EXIT

#or

#trap cleanup 0

 

cleanup()

{

#do some cleanup thing  when exit

#...

}

 

 

或者

 

trap handle_interrupt 2

 

handle_interrupt()

{

#do sth when ctrl_c is pressed

#...

}

 

下面是一些常见信号的数值

0 0 On exit from shell
1 SIGHUP Clean tidyup
2 SIGINT Interrupt
3 SIGQUIT Quit
6 SIGABRT Abort
9 SIGKILL Die Now (cannot be trap'ped)
14 SIGALRM Alarm Clock
15 SIGTERM Terminate

你可能感兴趣的:(c,shell,脚本,hook)