2021-05-12 14:32:11
Linux trap(捕捉) 命令
2020-06-16 17:17:52
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 intn";exit" INT
while :
do
((i++))
done
由於是死迴圈,不會退出,按下ctrl-c鍵後,程式會顯示,receive int,並退回$狀態。當arg為空時表示忽略後面指出的信號
trap -p
可顯示信號關聯的命令。請指正。
本文永久更新連結地址:http://www.linuxidc.com/Linux/2017-04/142472.htm
相關文章