IFS 更改未生效

mtk*_*mtk 5 bash

我试图将IFSInternal 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)

请让我知道,这里有什么问题?

Ran*_*832 9

IFS 也用作扩展 a$variable时不带引号的分隔符。换句话说,您确实更改了它,但是,它被视为两个点之间的分隔符。而且,该echo命令不知道您的 $IFS 是什么,即使知道了,它也不会将它放在输出参数之间,因此您在那里有一个空格。尝试echo ".$IFS."