我要做的是获取VM快照列表,但排除包含VM命名约定“ABCDE”的任何快照,并且快照超过3天,并将其输出到文本文件。
我到目前为止的脚本如下,但它不排除以“ABCDE”开头的服务器。
# Get VM Snapshot Information excluding anything with HEIEPC
Get-VM | Where {$_.Name -ne "ABCDE"} |
Get-Snapshot |
Where-Object { $_.Created -lt (Get-Date).AddDays(-3) } |
Format-List | Out-File $Log -Append
答案 0 :(得分:0)
您正在使用完全名称" ABCDE"检查虚拟机。使用" ABCDE"检查名称开始的虚拟机使用-like
运算符和通配符:
Get-VM | Where { $_.Name -notlike 'ABCDE*' } | ...
如果要使用子串" ABCDE"排除VM,请创建模式*ABCDE*
。他们名下的任何地方(不仅仅是开头)。