问题描述
instance_tags.stdout 输出看起来像
休闲段的预期输出为 App Server开发
- name: get instance tags
win_shell: aws ec2 --region us-east-1 describe-tags \ --filters "Name=resource-id,Values={{instance_id}}"
register: instance_tags
- name: echo instance tags
debug:
msg: "{{instance_tags.stdout | json_query('Tags[?Key==''AMSPatchGroup''].Value')}}"
但是实际输出是
解决方法
您至少想要instance_tags.stdout | from_json | ...
,因为.stdout
是一个字符串,而不是实际的结构
可以通过一个简单的实验看到这种行为,该实验显示{{ '{"a":"b"}' | json_query("a") }}
返回""
就像您的经历一样,但是{{ '{"a":"b"}' | from_json | json_query("a") }}
会产生"b"