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