在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