bash読み取り変数の置換について

bash読み取り変数の置換について

まず第一に、私はBashの経験がほとんどなく、英語が苦手で謝罪します。おそらくそれは明らかです。

Bashがこのオネライナから変数値を削除する理由を理解しようとしています。

echo "Alpha;Beta;Gamma" | IFS=";" read First Second Third; echo $First $Second $Third

出力なし

しかし、

echo "Alpha;Beta;Gamma" | (IFS=";" read First Second Third; echo $First $Second $Third)

正しい出力があります

Alpha Beta Gamma

readコマンドがサブシェルを開いて閉じると、変数の値が失われるようです。

私が正しい場合、どのように予防できますか?

目標は、CSVに似た構造を変数に分割することです。

アドバイスありがとうございます!

BR、

第二

関連情報