
ファイルリストを含む1D配列を反転しようとしています。フォローするhttps://stackoverflow.com/questions/13360091/how-to-reverse-array-in-bash-onliner-for-loop コードになります。しかし、これは私にとってあまり効果がありません。
for (( i=${#FILES_dcn[@]}-1,j=0 ;i>=0;i--,j++ ));
do
dcnarray[j] = ${FILES_dcn[i]}
done
配列をファイルにエコーすると、値はコピーされません。なぜそんなことですか? ?
答え1
周囲のスペースを整えるとうまく=
いきます。
dcnarray[j]=${FILES_dcn[i]}
答え2
=
変数の割り当ての周りにスペースを含めることはできません。
ところで、次のようになりますzsh
。
dcnarray=("${(@Oa)FILES_dcn}")