IFS
環境変数を改行文字に設定する次の例の場合...
IFS=$'\n'
- ドル記号は正確には何を意味 しますか?
- この特定のケースで何をしますか?
- この特定の使用法について詳しくはどこで読むことができますか (Google は検索で特殊文字を許可しておらず、そうでなければ何を探すべきかわかりません)。
IFS
環境変数と\n
文字 (改行) は
わかっていますが、次の形式を使用しないのはなぜIFS="\n"
ですか? (これは機能しません)。
たとえば、ファイルのすべての行をループして for ループを使用したい場合は、次のようにします。
for line in (< /path/to/file); do
echo "Line: $line"
done
IFS
ただし、改行文字に設定しないと正しく動作しません。それを機能させるには、次のようにする必要があります。
OLDIFS=$IFS
IFS=$'\n'
for line in (< /path/to/file); do
echo "Line: $line"
done
IFS=$OLDIFS
注:同じことを行うための別の方法は必要ありません。既に他の多くの方法を知っています...私はそれについてのみ興味が$'\n'
あり、誰かが説明してくれるかどうか疑問に思いました。