JMESPath 多个过滤器

JMESPath multiple filters

我想获取带有具有值的标签的实例。

aws ec2 describe-instances --query \
'Reservations[].Instances[? Tags[?Key==`datadog` && Value==`true`] ].Tags'

但是我没有通过这种方式得到结果。 如果我删除 && Value=='true' 我会得到带有 datadog = truedatadog = false

的实例

我错过了什么?

如果要过滤值,使用 --filter 比尝试将其编码到 --query.

更容易

来自describe-instances — AWS CLI Command Reference

To describe all instances with a Purpose=test tag

aws ec2 describe-instances --filters "Name=tag:Purpose,Values=test"

所以你会使用:

aws ec2 describe-instances --filters "Name=tag:datadog,Values=true"