有没有办法检查Bash中已设置trap
的内容(在当前会话或脚本中)?
理想情况下,我希望能够获得分配了trap
的信号列表,但如果不可能,我可以单独检查每个信号。
答案 0 :(得分:5)
让我们按如下方式定义一个函数:
$ function f
> {
> echo trapped
> }
让我们将陷阱设置为分配给SIGINT的函数
$ trap f SIGINT
让我们列出设置陷阱:
$ trap
trap -- 'f' SIGINT
trap -- '' SIGTSTP
trap -- '' SIGTTIN
trap -- '' SIGTTOU
答案 1 :(得分:5)
是即可。
您可以查看特定信号的所有陷阱或陷阱:
$ trap # show all traps for all signals
$ trap -p SIGINT # only show traps for SIGINT
$ trap -p EXIT # only show traps for EXIT