如果给定查询返回任何结果并根据该分支进行分支,我将尝试进行技术分析。我正在使用PowerShell,并且有效
(az network vnet list --query "[?name=='testvnet']" | ConvertFrom-Json).Length
但是后来我想知道JMESPath是否可以实现这一点,并尝试了
az network vnet list --query "length([?name=='testvnet'])"
,但似乎无法使用JMESPath。还是有办法吗?
根据https://jmespath.readthedocs.io/en/stable/specification.html#length上的文档,有一个名为length
的函数,据我了解它可以这样工作。
此特定示例的错误是
az : az network vnet list: error: argument --query: invalid jmespath_type value: "length([?name=='testvnet']"
At line:1 char:1
+ az network vnet list --query "length([?name=='testvnet'])"
错误消息中缺少结尾括号是可疑的。这可能是由于在PowerShell控制台中使用了az cli
。
答案 0 :(得分:2)
您快到了。试试
az network vnet list --query "[?name == 'testvnet'] | length(@)"