我正在尝试列出我的帐户在Azure云提供商内部的特定资源组中的所有非托管磁盘,这些磁盘没有特定标签,但查询部分存在问题。
上面的命令列出了所有非托管磁盘:
az disk list -g $rgName --query [?managedBy=='null'].name -o tsv
[上面编写命令时,我没有任何输出(尽管我有没有标签的非托管磁盘。动作等于'ToDelete':
az disk list -g $rgName --query "[?(managedBy=='null') && (tags.Action!='ToDelete')].name" -o tsv
谢谢您的帮助:)
使用Azure CLI使用JMESPath可能很难做到这一点。您可以改用PowerShell从ConvertFrom-Json
:
$json = az disk list | ConvertFrom-Json
然后用Where-Object
过滤属性:
$json | Where-Object {$_.tags -eq $null -and $_.tags.Action -ne 'ToDelete'}