如何使用Powershell删除7天以上的Azure托管磁盘快照?

时间:2017-06-26 11:55:57

标签: powershell snapshot azure-powershell azure-managed-disk

如何使用Powershell删除超过7天的Azure托管磁盘快照?

我们每天都会收集托管磁盘的自动快照。快照命名为:[' AppDisk_snapshot_AM' +" _" +(Get-Date -Format" yyyy-MM-dd")]

Snaphoshots存储在" / subscriptions / [subscription ID] / resourceGroups / [Resource Group Name] /providers/Microsoft.Compute/snapshots"

我想知道如何删除超过7天的这些快照并保持最新状态。谢谢。

1 个答案:

答案 0 :(得分:0)

根据您的描述,我们可以使用此脚本执行此操作:

$rg = 'vm'
$snapshotnames = (Get-AzureRmSnapshot -ResourceGroupName $rg).name

foreach($snapname in $snapshotnames)
{
    Get-AzureRmSnapshot -ResourceGroupName $rg  -SnapshotName $snapname |?{$_.id -like '*AppDisk*'} | ?{($_.TimeCreated).ToString('yyyyMMdd') -lt ([datetime]::Today.AddDays(-7).tostring('yyyyMMdd'))} | remove-azurermsnapshot -force

}