2

シェルとサブシェルでの単語分割について、不明な情報があります。

例:

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 はすべてこの動作を示しています。

4

1 に答える 1