Фрагмент моего сценария выглядит так:
# Collection of data
$VMs = Get-AzureRmVM
$vmOutput = $VMs | ForEach-Object {
[PSCustomObject]@{
"VM Name" = $_.Name
"VM Type" = $_.StorageProfile.osDisk.osType
"VM Profile" = $_.HardwareProfile.VmSize
"Environment" = $_.Tags.Environment
"Application" = $_.Tags.Application
"Decommission Date" = $_.Tags.Decomission
"OS Disk Size" = $_.StorageProfile.OsDisk.DiskSizeGB
"Data Disks Total Size" = ($_.StorageProfile.DataDisks.DiskSizeGB | Measure -Sum).Sum
"Data Disks Amount" = ($_.StorageProfile.DataDisks.DiskSizeGB | Measure ).Count
"Powerstate" = $_.Statuses[1].DisplayStatus
}
}
$vmOutput | sort "Environment", "VM Type", "VM Profile", "Application" | export-csv VMReport.csv -delimiter ";" -force -notypeinformation
Я хочу добавить столбец состояния питания в отчет, но он не включен в свойства Get-AzureRMVM . Я должен добавить -status в конце команды, чтобы показать мне эти данные, но, как я заметил, он работает только тогда, когда включены определенные имя группы ресурсов и имя vm.
Как изменить скрипт, чтобы он включал состояние питания в качестве последнего столбца в отчете, не выбрасывая этот скрипт и не создавая новый с нуля?