我想檢查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}」];然後' –
是的,只是一個愚蠢的錯字。謝謝! –