如果 IFS='\',為什麼 echo 語句中的反斜線會轉換成空格?

如果 IFS='\',為什麼 echo 語句中的反斜線會轉換成空格?

為什麼\設定時會轉換為空格IFS='\'

var="'(]\\{}\$\""
IFS='\'
echo $var # '(] {}$" 

答案1

因為,那就是IFS做。它是輸入字段分隔符,bash 將拆分該字元上不帶引號的字串,並且您已將其設為\

$ var="fooAbar"
$ IFS='A'
$ echo $var
foo bar
$ echo "$var"
fooAbar

相關內容