シェルとサブシェルでの単語分割について、不明な情報があります。
例:
IFS=""
file_name="file with space"
file_name=$(real_path $file_name)
$file_name
サブシェルで分割されますか? または、次のように二重引用符で囲む必要がありますか?
file_name=$(real_path "$file_name")
いくつかのテストの後、次のことがわかりました。
- を設定する
IFS=" "
と、$file_name
スペースで分割されます - その場合
IFS=""
、全体$file_name
が最初のパラメーターとして渡されます。
これまでのところ、ksh、dash、および bash はすべてこの動作を示しています。