0

我遇到了 IFS 环境变量的问题。

我正在尝试像这样创建一个数组:

IFS=$'\n'
FILENAMES=( "$(ls -AFl | sed "1 d" |  grep "[^/]$" | awk '{ print $9 }')" )

我知道当我运行这条线时

$ ls -AFl | sed "1 d" |  grep "[^/]$" | awk '{ print $9 }'

我的输出以每个输出位于单独行的格式放置,那么为什么我的数组包含所有输出作为第一个索引,而不是将每一行放在单独的索引中,我得到的输出是:

$ echo ${FILENAMES[0]}
file1.txt file2.txt

我想要的输出是

$ echo ${FILENAMES[0]}
file1.txt
$ echo ${FILENAMES[1]}
file2.txt

我已经尝试过像这样设置 IFS:

IFS="
"

然而这并没有什么不同,输出还是和我原来一样,我做错了什么?

4

0 回答 0