在json_query中找到键值并在json对象中打印另一个键

问题描述

这是原始数据,我想使用json_query在ansible中以keyvalue = 65060进行搜索,并打印相应的邻居,任何人都可以帮忙。

到目前为止,我知道了:

   - name: data manipulate
      debug: msg="{{ msnjson | json_query(msnquery) }}"
      vars:
        msnquery: "[*].AS"

但这只是显示所有AS密钥,但我正在查找值65060的密钥以及相应的Neighbor Key。

[
  {
    "AS": "65060","InQ": "0","MsgRcvd": "258259","MsgSent": "120410","Neighbor": "99.99.99.5","OutQ": "0","Spk": "0","StPfxRcd": "1","TblVer": "2241","updown": "2w0d"
  },{
    "AS": "64600","MsgRcvd": "281828","MsgSent": "120498","Neighbor": "192.168.100.1","StPfxRcd": "33","updown": "12w5d"
  },"MsgRcvd": "281867","Neighbor": "192.168.100.2","MsgRcvd": "258516","MsgSent": "120499","Neighbor": "192.168.100.4","StPfxRcd": "19","updown": "5w6d"
  }
]

解决方法

尝试

   - name: data manipulate
      debug: msg="{{ msnjson | json_query(msnquery) }}"
      vars:
        msnquery: "[?AS=='65060'].Neighbor"