如何将 kubectl 命令的输出解析为 bash 脚本的数组

How to parse output from a kubectl command into an array for a bash script

我有这个 kubectl 命令,它给我以下输出。我需要知道如何将输出存储在一个数组中,这样我就可以遍历每一个并进一步对资源发出 gcloud 命令。

kubectl get ingress test-load-balancer -o jsonpath='{.metadata.annotations.ingress\.kubernetes\.io/backends}'| jq  -r 'keys'

[
  "k8s-be-30423--12305b0f030d5a48",
  "k8s-be-31245--10023b0f030d5a48"
]

但是,现在我需要 运行 在 bash 脚本中针对这些 k8s-xx 资源执行单独的命令。我尝试了以下但它没有将输出保存在数组中

read BACKEND_SERVICES<<<$(kubectl get ingress cysiv-load-balancer -o \

jsonpath='{.metadata.annotations.ingress\.kubernetes\.io/backends}'| jq -r 'keys')

提前致谢

我假设你的密钥不包含空格。

array=($(kubectl ... | jq -r 'keys[]'))
declare -p array