我试图将IFS(Internal Field Separator)字符更改为逗号以进行文件处理,但令我惊讶的IFS是它没有改变。
这是命令和输出的顺序:
mtk4@mtk-laptop:~$ echo .$IFS.
. . # A space
mtk4@mtk-laptop:~$ IFS="," # No error was thrown, no message
mtk4@mtk-laptop:~$ echo .$IFS.
. . # Again echo'd it, but no change
Run Code Online (Sandbox Code Playgroud)
请让我知道,这里有什么问题?
IFS 也用作扩展 a$variable时不带引号的分隔符。换句话说,您确实更改了它,但是,它被视为两个点之间的分隔符。而且,该echo命令不知道您的 $IFS 是什么,即使知道了,它也不会将它放在输出参数之间,因此您在那里有一个空格。尝试echo ".$IFS."