【发布时间】:2019-10-25 13:17:53
【问题描述】:
假设我有一个脚本:
#!/bin/bash
# test_trap.sh
trap "echo SIGINT captured!" SIGINT
echo $$
sleep 1000
我知道陷阱命令只会在sleep 1000 接收到 SIGINT 信号时完成后执行。但是当我按下键盘Ctrl-C时会执行trap的命令:
> sh test_sh.sh
50138
^CSIGINT captured!
而且使用 kill -s SIGINT 不会。
我在这里错过了什么?
bash 版本是 GNU bash,4.2.46(2)-release
【问题讨论】: