0

我写了一个小脚本来获取最近 x 天内每个还原点的创建时间:

$VMs = $ImportCSV  # Names of Virtual Machines 
$DateToCompare = 10
foreach ($vm in $VMs) {
    $allRestorePoints = Get-VBRRestorePoint -Name $vm.Name |
                        where {$_.CreationTime -gt $DateToCompare} |
                        Select-Object VMName, CreationTime 
}

$DateToCompare该脚本向我显示了最近几天的所有 VM 名称和还原点的创建时间。但是如何计算每个 VM 的还原点并将其导出为 CSV?

4

1 回答 1

1

使用您发布的代码,您将只有最后一个 VM 的还原点$VMs在变量中$allRestorePoints

要获取所有 VM 的还原点计数,请枚举所有 VM 的所有还原点并按 VM 名称分组:

$restorePoints = $VMs | ForEach-Object {
    Get-VBRRestorePoint -Name $_.Name |
        Where-Object { $_.CreationTime -gt $DateToCompare }
} | Select-Object VMName, CreationTime

$restorePoints |
    Group-Object VMName |
    Select-Object Name, Count |
    Export-Csv 'C:\output.csv' -NoType
于 2018-07-09T10:53:32.357 回答