Найти вставленные ключи массива в Unix - PullRequest
1 голос
/ 25 февраля 2020

В приведенном ниже коде я должен вывести k1, k2 и k3. Это печать v1, v2 v3

declare -A ARRAY_NAME
ARRAY_NAME[k1]="v1"
ARRAY_NAME[k2]="v2"
ARRAY_NAME[k3]="v3"

for key  in "${ARRAY_NAME[@]}"
        do
                echo "Key -- $key"

        done

Пожалуйста, помогите решить эту проблему

1 Ответ

4 голосов
/ 25 февраля 2020

Похоже, вы используете ассоциативный массив. По умолчанию эти массивы будут предоставлять значения.

Чтобы получить ключи массива, попробуйте использовать восклицательный знак (!).

Ниже приведен обновленный код

for key  in "${!ARRAY_NAME[@]}"
        do
                echo "Key -- $key"

        done

Надеюсь, что это помогает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...