Erstellen einer CSV mit VM Infos

Und nochmal kurz ein kleiner Report für VM Infos aus VMM

#Import Virtual Machine Manager PowerShell Cmdlets

add-pssnapin microsoft.systemcenter.virtualmachinemanager -ea silentlycontinue

 

#Select the VMM-Server

get-vmmserver “VMM Server” |Out-Null

 

#Create CSV-Table

$TableName = „CSVs“

$Table = New-Object System.Data.DataSet

$Table.Tables.Add($TableName)

[void]$Table.Tables[$TableName].Columns.Add(„VMname“,[string])

[void]$Table.Tables[$TableName].Columns.Add(„OS“,[string])

[void]$Table.Tables[$TableName].Columns.Add(„HostName“,[string])

[void]$Table.Tables[$TableName].Columns.Add(„VHDSize“,[string])

[void]$Table.Tables[$TableName].Columns.Add(„RAM“,[string])

[void]$Table.Tables[$TableName].Columns.Add(„Location“,[string])

[void]$Table.Tables[$TableName].Columns.Add(„vSwitch“,[string])

 

 

$VMS = Get-VM | Sort-Object -Property Name -Descending

 

foreach ($VM in $VMS)

{

$Size = 0

 

$location = $vm.location

{

foreach($vhd in $VM.VirtualHardDisks)

{

$Size = $size + $vhd.Size

 

}

 

$dr = $Table.Tables[$TableName].NewRow()

$dr[„VMname“] = $VM.name

$dr[„OS“] = $OS

$dr[„HostName“] = $VM.HostName

$dr[„Location“] = $VM.Location

$dr[„VHDSize“] = $Size/1GB

$dr[„RAM“] = $VM.Memory/1024

$Table.Tables[$TableName].Rows.Add($dr)

$dr = $Table.Tables[$TableName].NewRow()

}

}

#Create File Name

$date = Get-Date -Format „yyyy-MM-dd“

$FileName = „$Date“+“_VM_Location.csv“

 

#Export table in csv file

$Table.Tables[$TableName] | export-csv -Path „\\your VMM Server\$Filename“ -Encoding UTF8 -delimiter „;“ -NoTypeInformation

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *