ファイル行を配列要素として読み取ることができるように、「cat」はどのように機能しますか? [コピー]

ファイル行を配列要素として読み取ることができるように、「cat」はどのように機能しますか? [コピー]

Bashでは、ファイルを配列として読み取ることで、ファイルの各行が配列の要素になるようにすることができます。

$ arr=( $(cat myfile) )

catファイル行を配列要素として読み取ることができるようにするには、これがどのように機能するのか疑問に思います。catファイルの内容を行に分割しますか?

catファイルの全内容を一度に読むより、一行に分けずにファイルarrの全内容、一つの要素だけ存在するようにしますか?ありがとうございます。

ベストアンサー1

猫ではなく=()で=""を使用すると、配列ではありません。

$ 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

おすすめ記事