bash配列の長さがbash変数(int)と等しいかどうかをチェックしたいと思います。現在のコードは次のようになります。配列の長さがbashの変数と等しいかどうかを確認する
if [ "${#selected_columns}" -eq "${number_of_columns}" ]; then
echo "They are equal!"
fi
echo文が実行されないため、このコードはfalseを返します。ただし、これを行うと、両方の場合に4が生成されます。
echo "${#selected_columns[@]}"
echo "${number_of_columns}"
ここに間違いがありますか?文字列とintとの関係は何ですか?あなたに
最初の例で '[@]'がありませんか? – Junuxx
'if $ {#selected_columns [@]}" -eq "$ {number_of_columns}"];その後、 –
ええ、ちょうど愚かなタイプミス。ありがとう! –