【问题标题】:jq if condition matches, needs to print pod namejq 如果条件匹配,需要打印 pod 名称
【发布时间】:2020-06-23 14:30:22
【问题描述】:

命令:

kubectl get pods web-www-7f8b64fc8d-bkmbk web-www2-6f78b88864-9jmxn -o json |jq '.items[].spec.volumes[].configMap|select(.name=="webdata")|.name'

输出:

"webdata"
"webdata"

但不是“.name” 想打印“.items[].metadata.name”

【问题讨论】:

  • kubectl 获取 pods web-www-7f8kubectl 获取 pods skunk-agentlogin-7f8b64fc8d-bkmbk skunk-backoffice-6f78b88864-9jmxn -o json |jq '.items[].spec.volumes[].configMap |select(.name=="skunk-conf")|.items[].metadata.name' jq: 错误(在 :1370):无法迭代 null (null)。 web-www2-b64fc8d-bkmbk -6f78b88864-9jmxn -o json |jq '.items[].spec.volumes[].configMap|select(.name=="webdata")|.items[].metadata.name' jq:错误(在 :1370):无法迭代 null (null)
  • ".items[].metadata.name" 给出错误为 jq: error (at :1370): Cannot iterate over null (null)
  • How to Ask,没有minimal reproducible example,我们该如何回答这个问题?

标签: jq


【解决方案1】:
.items[] as $i
| spec.volumes[].configMap|select(.name=="webdata")
| $i
| .metadata.name

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-25
    • 2021-01-15
    • 2021-09-05
    • 1970-01-01
    • 1970-01-01
    • 2014-12-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多