markdown 有关trap命令的Shell脚本知识

Posted

tags:

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


Khi shell script nhận được một Signal, script có thể thực hiện một trong ba actions:
1. Ignore and do nothing.
2. Catch signal by using trap and do something.
3. Take the default action.

Các actions trên đúng ngoại trừ trường hợp 3 signals:
* SIGKILL (9)
* SIGSTOP (17)
* SIGCONT (19)

3 signals đặc biệt này không thể caught và sẽ thực hiện default action.

### Trap command syntax ###
`trap [COMMAND_LISTS] [SIGNALS]`
* COMMAND LISTS: list các actions hoặc là một function được run khi script received signals
* SIGNALS: list các signals.

#### To ignore a signal ####
`trap '' [SIGNALS]`


Example:
```
#!/bin/bash

trap 'my_exit; exit' SIGINT SIGQUIT
count=0
 
my_exit()
{
echo "you hit Ctrl-C/Ctrl-\, now exiting.."
 # cleanp commands here if any
}
 
while :
 do
   sleep 1
   count=$(expr $count + 1)
   echo $count
 done
```

以上是关于markdown 有关trap命令的Shell脚本知识的主要内容,如果未能解决你的问题,请参考以下文章

shell信号捕捉命令 trap

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

每日一题shell脚本知识点

Linux信号和trap命令的使用

markdown 有关shell脚本的提示

Shell Trap信号管理