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="
"
ただし、これは違いはなく、出力は元のままでした。何が間違っているのでしょうか?