linux信号与trap命令

Posted 兰昌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux信号与trap命令相关的知识,希望对你有一定的参考价值。

使用 trap -l 或者 kill -l 来查看信号的编号及关联的名称

 1 [party_a@localhost ~]$ kill -l
 2  1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL       5) SIGTRAP
 3  6) SIGABRT      7) SIGBUS       8) SIGFPE       9) SIGKILL     10) SIGUSR1
 4 11) SIGSEGV     12) SIGUSR2     13) SIGPIPE     14) SIGALRM     15) SIGTERM
 5 16) SIGSTKFLT   17) SIGCHLD     18) SIGCONT     19) SIGSTOP     20) SIGTSTP
 6 21) SIGTTIN     22) SIGTTOU     23) SIGURG      24) SIGXCPU     25) SIGXFSZ
 7 26) SIGVTALRM   27) SIGPROF     28) SIGWINCH    29) SIGIO       30) SIGPWR
 8 31) SIGSYS      34) SIGRTMIN    35) SIGRTMIN+1  36) SIGRTMIN+2  37) SIGRTMIN+3
 9 38) SIGRTMIN+4  39) SIGRTMIN+5  40) SIGRTMIN+6  41) SIGRTMIN+7  42) SIGRTMIN+8
10 43) SIGRTMIN+9  44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
11 48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
12 53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9  56) SIGRTMAX-8  57) SIGRTMAX-7
13 58) SIGRTMAX-6  59) SIGRTMAX-5  60) SIGRTMAX-4  61) SIGRTMAX-3  62) SIGRTMAX-2
14 63) SIGRTMAX-1  64) SIGRTMAX

trap 命令语法:

trap 执行的shell命令 signal                #signal为接收到的信号,可以是信号的编号,也可以是信号名

trap ‘命令 ;命令‘ signal                        #接收到信号后,执行多条命令。

trap ‘命令 ;命令‘ signal signal  signal           #同时接收多个信号后

例如:trap ‘:‘ INT EXIT TSTP TERM HUP         #<==屏蔽这些信号,通常部署在跳板机上,用来保护跳板机的限制脚本。

重要信号及说明

1) HUP       挂起,通常因终端掉线或用户退出引发
2) INT       中断,通常按 Ctrl+c 组合键引发  
3) QUIT      退出,通常按 Ctrl+组合键引发  
6) ABRT      中止,通常因某些执行错误引发
14)ALRM     报警,通常用来处理超时
15)TERM     终止,通常在关机的时候发送
20)TSTP     停止进程运行,通常按 Ctrl+z 组合键引发 
 

以上是关于linux信号与trap命令的主要内容,如果未能解决你的问题,请参考以下文章

Linux trap(捕捉) 命令

Linux命令——trap

Linux的shell脚本trap信号处理

shell从入门到精通(10)信号捕获和处理

Linux信号和trap命令的使用

老男孩教育每日一题-第69天-shell脚本知识点:linux系统脚本中trap信号都有哪些,如何进行使用?