0
JMESPath jp
(https://github.com/jmespath/jp)ユーティリティを使用してフィルタを適用しようとしています。 私の目標は、状態が「追加」で、特定のデバイスID(例:0000debf17cff54b
)が除外されているフローのみを持つことです。 cat test | ./jp '[][?id=="of:00002259146f7743" && state=="ADDED"]'
をが、結果は[]
JMESPpath:ネストされた属性によるフィルタリング
[
{
"flow": [
{
"ethType": "0x86dd",
"type": "ETH_TYPE"
},
{
"protocol": 58,
"type": "IP_PROTO"
},
{
"icmpv6Type": 135,
"type": "ICMPV6_TYPE"
}
],
"id": "of:00001aced404664b",
"state": "ADDED"
},
{
"flow": [
{
"ethType": "0x86dd",
"type": "ETH_TYPE"
},
{
"protocol": 58,
"type": "IP_PROTO"
},
{
"icmpv6Type": 136,
"type": "ICMPV6_TYPE"
}
],
"id": "of:0000debf17cff54b",
"state": "ADDED"
}
]
はい、正しいです。しかし、実際の原因は、文字列に対して一重引用符を使用する必要があるようです。そして、フィルタ式全体を二重引用符で囲みます。 – KWubbufetowicz