
最近、奇妙な動作に遭遇しました。グループ化コマンド内ではトラップが実行されません。
$ cat ./1.sh
#!/usr/bin/env bash
set -eu
trap 'echo exit' EXIT
$ ./1.sh
exit
$ cat ./2.sh
#!/usr/bin/env bash
set -eu
echo test | { trap 'echo exit' EXIT; }
$ ./2.sh
それは想定通りでしょうか?
最近、奇妙な動作に遭遇しました。グループ化コマンド内ではトラップが実行されません。
$ cat ./1.sh
#!/usr/bin/env bash
set -eu
trap 'echo exit' EXIT
$ ./1.sh
exit
$ cat ./2.sh
#!/usr/bin/env bash
set -eu
echo test | { trap 'echo exit' EXIT; }
$ ./2.sh
それは想定通りでしょうか?