Quantcast
Channel: VMware Communities: Message List
Viewing all articles
Browse latest Browse all 49146

Re: Change output of a script to include the VM name?........maybe?

$
0
0

Try like this

 

$Cluster="MyCluster"

$Datastores="MyDatastore"

$VMFolder="MyFolder"


$ESXHost=Get-Cluster$Cluster|Get-VMHost| select -First 1


foreach($DatastoreinGet-Datastore$Datastores){

   # Collect .vmx paths of registered VMs on the datastore

   $registered=@{}

   Get-VM-Datastore $Datastore|%{$_.Extensiondata.LayoutEx.File|where{$_.Name-like"*.vmx"}|%{$registered.Add($_.Name,$true)}}


   # Set up Search for .VMX Files in Datastore

   New-PSDrive-Name TgtDS -Location $Datastore-PSProvider VimDatastore -Root '\'|Out-Null

   $unregistered=@(Get-ChildItem-Path TgtDS: -Recurse |`

   where{$_.FolderPath-notmatch".snapshot"-and$_.Name-like"*.vmx"-and!$registered.ContainsKey($_.DatastoreFullPath)})

   Remove-PSDrive-Name TgtDS


   #Register all .vmx Files as VMs on the datastore

   $task=@()

   foreach($VMXFilein$unregistered){

   $task+=New-VM-VMFilePath $VMXFile.DatastoreFullPath-VMHost $ESXHost-Location $VMFolder-RunAsync

   }

   Wait-Task-Task $task|Out-Null

   $task| select @{N='VM';E={$_.Result.Name}}, StartTime, FinishTime, PercentComplete, State

}


Viewing all articles
Browse latest Browse all 49146

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>