“cat” 是如何工作的,以便它允许将文件行读取为数组元素?

“cat” 是如何工作的,以便它允许将文件行读取为数组元素?

在bash中,我们可以将文件读入数组,这样文件中的每一行就成为数组的一个元素。

$ arr=( $(cat myfile) )

我想知道如何cat工作才能允许将文件行读取为数组元素?是否cat将文件内容分成几行?

cat只是一次读取文件的所有内容,而不将其分成几行,这样 arr只有一个元素,即文件的全部内容?谢谢。

答案1

它不是 cat,它是 =() 如果你使用 ="" 它就不是一个数组。

$ A="$(echo -e "a\nb")"
$ echo $A
a b
$ echo "$A"
a
b
$ B=( $(echo -e "a\nb") )
$ echo $B
a
$ echo "${B[*]}"
a b

相关内容