Citando o manual da bash:
When
bash
is interactive, in the absence of any traps, it ignoresSIGTERM
(so thatkill 0
does not kill an interactive shell), andSIGINT
is caught and handled (so that thewait
builtin is interruptible).
Sim, o bash sai do builtins quando recebe SIGINT
. Você pode verificar que com wait
ou read
( read
de um arquivo grande sem novas linhas, você terá tempo de pressionar Ctrl C ). wait
em particular precisa lidar com SIGINT
corretamente, conforme o POSIX (junto com todos os outros sinais que pode encontrar.