2019-03-18 04:17:28 +00:00
|
|
|
# trap
|
|
|
|
|
2021-08-02 09:41:09 +01:00
|
|
|
> 在进程或操作系统接收到信号后自动执行命令。
|
|
|
|
> 可用于对用户中断或其他操作执行清理。
|
2021-10-01 19:28:01 +01:00
|
|
|
> 更多信息:<https://manned.org/trap>.
|
2019-03-18 04:17:28 +00:00
|
|
|
|
2021-08-02 09:41:09 +01:00
|
|
|
- 列出设置 trap 的可用信号:
|
2019-03-18 04:17:28 +00:00
|
|
|
|
|
|
|
`trap -l`
|
|
|
|
|
2021-08-02 09:41:09 +01:00
|
|
|
- 列出当前 shell 程序的活动 trap 程序:
|
2019-03-18 04:17:28 +00:00
|
|
|
|
|
|
|
`trap -p`
|
|
|
|
|
2021-08-02 09:41:09 +01:00
|
|
|
- 设置 trap 以在检测到一个或多个信号时执行命令:
|
2019-03-18 04:17:28 +00:00
|
|
|
|
|
|
|
`trap 'echo "检测到信号 {{SIGHUP}}"' {{SIGHUP}}`
|
|
|
|
|
|
|
|
- 移除活动 trap:
|
|
|
|
|
|
|
|
`trap - {{SIGHUP}} {{SIGINT}}`
|