1
以下の例では、エクスポートされた変数があります。名前は関数内のローカルとして再使用されます。関数内には、同じ名前のENV変数を使用する子プロセスがあります。 zshのは、変数の設定を解除しながら、オリジナルのエクスポート値を再使用していますzshとbashでエクスポートされた変数を持つ関数の "local + x"の予想される動作は何ですか?
バッシュ:
function the_func {
local +x MY_VAR="new value"
my -child -process # === in zsh: $MY_VAR is undefined
# === in bash: $MY_VAR="original"
}
export MY_VAR="original"
the_func
が、これはzshの中やbashのバグですか?または、2つの間のわずかな違いは?