Seu código não explica tudo. Não tenho ideia do que você está tentando fazer. No entanto, posso responder a pergunta em seu título: o processo >(…)
não recebe um sinal quando o shell principal sai. Ele sai porque chega ao final do script e, nesse momento, executa a EXIT
trap até que execute o exit
builtin.
Se você pensou que o script está sendo morto antecipadamente porque achou que as chamadas read -t 1
levariam um segundo cada: não, elas não retornam imediatamente assim que o pai sai. Quando o pai sai, as chamadas read
na subshell estão tentando ler de um canal fechado, e a chamada do sistema read
subjacente retorna imediatamente sem dados disponíveis.