「エクスポート」の一部としてサブシェルが失敗した場合、「set -e」はスクリプトを中断しません。

「エクスポート」の一部としてサブシェルが失敗した場合、「set -e」はスクリプトを中断しません。

次のスクリプトを実行するとき:

#!/bin/bash
set -e
export X=$(false)
echo That did not abort
X=$(false)
echo That did abort

次のように出力されます。

That did not abort

したがって、export X=実行は中断されませんが、X=中断されます。

export X=設定されていてもset -eエラーが発生しても中断されないのはなぜですか?

関連情報