Ответ 1
${#array[@]}
вернет вам размер массива.
$ declare -A array
$ array[foo]='something'
$ array[bar]='blah'
$ array[42]='nothing'
$ echo ${#array[@]}
3
Есть ли способ получить размер ассоциативного массива в bash:
declare -A array
... без повторения через элементы?
Размер интереса: просто количество элементов и количество памяти, которое оно потребляет?
${#array[@]}
вернет вам размер массива.
$ declare -A array
$ array[foo]='something'
$ array[bar]='blah'
$ array[42]='nothing'
$ echo ${#array[@]}
3
Вы можете использовать ${#array[@]}
для получения количества элементов.
Я не думаю, что можно получить объем памяти, который он потребляет.