获得未锁定的资源

问题描述

我需要一个powershell脚本来获取所有未锁定资源组的列表。 如果您运行Get-AzureRmResourceLock,它将显示当前锁定的资源而不是未锁定的资源

解决方法

执行此操作的一种方法如下:

  1. 获取您订阅中的所有资源组
$AllRGs = $(Get-AzResourceGroup | Select-Object ResourceGroupName).ResourceGroupName
  1. 获取具有锁定的资源组
$lockedRGs = $(Get-AzResourceLock | Where-Object {$_.ResourceType -eq "Microsoft.Authorization/locks"} | Select-Object ResourceGroupName).ResourceGroupName
  1. 两者相差
$noLockRGs = $AllRGs | Where-Object {$lockedRGs -notcontains $_}