【发布时间】:2021-06-28 00:48:51
【问题描述】:
我正在寻找一种方法来检查虚拟机列表是否有备份以及状态如何。 我设法获得了虚拟机备份的状态,但如果在 $tasks 中找不到虚拟机,我不会收到错误消息。 我需要知道 $tasks 中是否不存在 VM,以便我知道没有为此 VM 配置备份。 到目前为止的脚本。
Write-Host "Enter Backup Server" -ForegroundColor cyan
$h = read-host -Prompt 'Hostname'
Write-Host " "
write-host "Hostname--------Job-------------Status " -ForegroundColor Cyan
Foreach ($i in $Hostname) {
Invoke-Command -ComputerName $h -ScriptBlock {
Add-PSSnapin VeeamPSSnapin
foreach($Job in (Get-VBRJob))
{
$Session = $Job.FindLastSession()
if(!$Session){continue;}
$Tasks = $Session.GetTaskSessions()
$Tasks | ?{$_.Name -eq $using:i} | %{write-host $_.Name ":",$_.JobName,"===>"$_.Status}
}}
}
提前致谢!
瓦莱里
【问题讨论】:
-
你如何将任何东西传递给你的
$Hostname变量? -
从 .txt 文件中获取内容。该文件包含每个新行上的主机名。
标签: powershell veeam