2016-12-27 13 views
0

PowerCLIを使用して、UIDが 'XYZ'と一致しないVMWareスナップショットのリストを取得しようとしています。PowerCLIを使用してVMWareのスナップショットのリストを取得する場合は、

私はそれを行うために次のコードを書いています。 PowerCLIの中でそのコードを実行

$body +=echo ""`r`n""`r`n"-----Open VMware snapshots other than Uid 'XYZ'-----"`r`n""`r`n"" 
Get-VM | Get-snapshot | where {($_.Uid -notmatch 'XYZ')} | ForEach-Object { 
    $object=New-Object -TypeName PSObject -Property @{ 
     VM_Name = $_.VM 
     Created = $_.Created 
     Size = "$([math]::Round($_.SizeGB, 2)) GB" 
     SnapshotName = $_.name 
     Description = $_.extensiondata.description 
       } 
    $body += $object | ft | out-string 
    Write-Output $object  
    } 

は起こるべきではありませんUidの「XYZ」で1、を含む、すべてのVMwareスナップショットを返します。

コードを変更するにはどうすればよいですか?

答えて

0

Where-Object比較で-neまたは-notlikeを使用してみてください。これは、正規表現を使用しないで文字列を比較しているように見えるためです。

Get-VM | Get-snapshot | where {($_.Uid -notlike 'XYZ')} | ForEach-Object ...

+0

私が使用** - ** notlikeが、同じ応答 – prudhvi

+0

それを得たworked..Sorrry – prudhvi

関連する問題