我在Bash中设置IFS
变量时遇到问题。我正在运行Mac OS X 10.11.2 El Capitan并且正在使用iTerm2。现在,在开箱即用的终端应用程序中也出现了相同的行为。
可能导致这种情况的原因是什么?
更新:以下是单独行中相同内容的屏幕截图。我认为将hexdump
命令添加到管道中会清楚地表明它没有正常工作,但也许没有。我对Bash来说还是个新手。
答案 0 :(得分:4)
您正尝试将IFS设置为与回声相同的行。与Name
一样,在单独的行上执行此操作。此外,由于IFS是您声明为空格的字符,因此您需要echo
命令中的引号:
IFS=','
echo "$IFS"
答案 1 :(得分:1)
如果你在自己的命令中设置它,它可以正常工作:
$ IFS=, ; echo $IFS
,
最好不要在子shell或脚本中执行此操作,因为这样您就不会丢失工作shell中的原始设置:
$ ( IFS=, ; echo $IFS )
,