1

在下面的代码中,我应该打印 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

请帮助解决这个问题

4

1 回答 1

4

看起来您正在使用关联数组。默认情况下,这些数组将提供值。

要获取数组的键,请尝试使用感叹号 (!)。

下面是更新的代码

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

        done

希望这可以帮助。

于 2020-02-25T09:04:00.950 回答