如何使用 PowerShell 删除 Azure 虚拟机的特定标签?
powershellmicrosoft technologiessoftware & coding
要删除 Azure 虚拟机的特定标签,我们可以使用 Update-AZTag 命令中 Operation 参数的 Delete 属性。以下示例中,Azure 虚拟机 TestMachine2k12 包含以下标签。
Key Value --- ----- Patching_Day Sunday Owner Chirag
我们需要删除 Patching_Day 标签,为此,我们还需要它的值。以下命令将从 Azure 虚拟机中删除指定的标签。
PS C:\> $vm = Get-AzVM -VMName TestMachine2k12
PS C:\> $tag = @{"Patching_Day"="Sunday"}
PS C:\> Update-AzTag -ResourceId $vm.Id -Tag $tag -Operation Delete -Verbose
检查标签后,应该将其删除。
Get-AzVM -VMName TestMachine2k12 | Select -ExpandProperty Tags Key Value --- ----- Owner Chirag
如果您要删除多个标签,请在标签哈希表中提供键值对。例如:
$tags = @{Patching_Day='Sunday'; Application='SecureTag'; Location='WestUS'}
假设我们有多个虚拟机具有相同的标签键(例如 Patching_Day),但值不同,那么我们需要检索每个虚拟机的标签值。
$vms = @('AZVM1','AZVM2','AZVM3')
foreach($vm in $vms){
$azvm = Get-AzVM -Name $vm
$aztag = $azvm | Select -ExpandProperty Tags
$Deletetag = @{'Patching_Day'= $aztag.Patching_Day}
Update-AzTag -ResourceID $azvm.ID -tag $deletetag -Operation Delete -Verbose
}
上述代码将删除数组中提到的虚拟机上的 Patching_Day 标签及其相应的值。

