forループでは、私は探しています:Array1
の長さがArray2
の長さと一致する場合は、break
forループです。 (スクリプトが正常に動作しながら)Array1の長さがArray2の長さ(bash)と等しいかどうかを確認してください
Shellcheckでエラーが発生します私はまだbashのを学んだし、私の先生は、「常にShellcheckで検証」と「常に二重の[[]]で条件文を置くと言わ
if [[ "${!Array1[@]}" == "${!Array2[@]}" ]] ; then
break;
fi
^-- SC2199: Arrays implicitly concatenate in [[ ]]. Use a loop (or explicit * instead of @).
"とする『』配列の長さのために*
を使用することはありませんエラー(s)は補正
if [ "${!Array1[*]}" == "${!Array2[*]}" ] ; then
break;
fi
で除去されている私はここでのベストプラクティスは何か不思議でしたか?
長さによってあなたは要素の数を意味する場合は、 ' "$ {ARRAY1 [@]!}"'されます違う。 – Cyrus
$ {#array [@]} "で配列の要素の長さを取得します。 – Leon