Linux trap(捕捉) 命令

Posted

tags:

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

trap 命令用于指定在接收到信号后将要采取的行动;

trap 命令的参数分为两部分,前一部分是接收到指定信号时将要采取的行动,后一部分是要处理的信号名。而且必须在你想保护的那部分代码以前指定trap命令。

格式:trap commands signal-list

例如:trap "cp -f /etc/resolv.conf.bak /etc/resolv.conf;exit"  INT 

 ..........................................

信 号(SIGINT)说 明
HUP(1)挂起,通常因终端掉线或用户退出而引发
INT(2)中断,通常因按下Ctrl+C组合键而引发
QUIT(3)退出,通常因按下Ctrl+/组合键而引发
ABRT(6)中止,通常因某些严重的执行错误而引发
ALRM(14)报警,通常用来处理超时
TERM(15)终止,通常在系统关机时发送


INT 就是中断信号(linux 中是ctrl-C,SCO unix 中是"del"键)

trap 就是捕捉信号,与所提供的arg联系起来,就是当捕捉到某个信号时执行arg规定的动作。

#!/bin/bash

trap "echo -e \"\nreceive int\n\";exit" INT

while :

do

((i++))

done

由于是死循环,不会退出,按下ctrl-c键后,程序会显示,receive int,并退回$状态。当arg为空时表示忽略后面指出的信号

trap -p

可显示信号关联的命令。请指正。


本文出自 “北冰--Q” 博客,请务必保留此出处http://beibing.blog.51cto.com/10693373/1894457

以上是关于Linux trap(捕捉) 命令的主要内容,如果未能解决你的问题,请参考以下文章

trap信号捕捉详解

信号捕捉trap及其在shell中的用法

Linux命令——trap

N74023 第四周

linux信号与trap命令

linux信号与trap命令