IFS='\'인 경우 백슬래시가 echo 문에서 공백으로 변환되는 이유는 무엇입니까?

IFS='\'인 경우 백슬래시가 echo 문에서 공백으로 변환되는 이유는 무엇입니까?

\설정시 공간으로 변환됩니까?IFS='\'

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

답변1

왜냐하면, 그게 바로IFS하다. 이것은 입력 필드 구분 기호입니다. bash는 해당 문자에서 따옴표가 없는 문자열을 분할하고 다음과 같이 설정했습니다 \.

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

관련 정보