2014-11-11 4 views
1

Общая информацияPowerShell для экспорта нескольких переменных в csv?

$ComputerSystem = Get-WmiObject -Class Win32_ComputerSystem | Select -Property Model , Manufacturer , Description , PrimaryOwnerName , SystemType 

конфигурации загрузки

$BootConfiguration = Get-WmiObject -Class Win32_BootConfiguration | Select -Property Name , ConfigurationPath 

BIOS Информация

$BIOS = Get-WmiObject -Class Win32_BIOS | Select -Property PSComputerName , Manufacturer , Version #| Export-Csv -InputObject 

Операционная система Информация

$OS = Get-WmiObject -Class Win32_OperatingSystem | Select -Property Caption , CSDVersion , OSArchitecture , OSLanguage 

I ш ant экспортировать все эти переменные в файл csv с заголовками, но я не могу.

+0

Создать пользовательский объект, содержащий все свойства, которые вы хотите в вашем файл CSV и конвейер для экспорта-CSV, как kohlbrr предлагает – Paul

+0

Подумайте о структуре CSV файл, который вы хотите - это будет делать вещи яснее (записать пример файла вручную с заголовками столбцов и образцом). – Swonkie

+0

Две из ваших переменных имеют свойство производителя. –

ответ

0

Следующие сочетания неэлементов из каждого объекта, созданного отдельно командами get-wmiobject, в переменную $ report. Оттуда вы можете экспортировать в csv.

Это может быть лучше упрощено с помощью циклов, проходящих через каждую переменную, созданной вызовами gwmi, и добавьте noteproperties в переменную отчета.

$ComputerSystem = Get-WmiObject -Class Win32_ComputerSystem | Select -Property Model , Description , PrimaryOwnerName , SystemType 
$BootConfiguration = Get-WmiObject -Class Win32_BootConfiguration | Select -Property Name , ConfigurationPath 
$BIOS = Get-WmiObject -Class Win32_BIOS | Select -Property PSComputerName , Manufacturer , Version 
$OperatingSystem = Get-WmiObject -Class Win32_OperatingSystem | Select -Property Caption , CSDVersion , OSArchitecture , OSLanguage 

$report = New-Object psobject 
$report | Add-Member -MemberType NoteProperty -name Model -Value $ComputerSystem.Model 
$report | Add-Member -MemberType NoteProperty -name Description -Value $ComputerSystem.Description 
$report | Add-Member -MemberType NoteProperty -name PrimaryOwnerName -Value $ComputerSystem.PrimaryOwnerName 
$report | Add-Member -MemberType NoteProperty -name SystemType -Value $ComputerSystem.SystemType 
$report | Add-Member -MemberType NoteProperty -name Name -Value $BootConfiguration.Name 
$report | Add-Member -MemberType NoteProperty -name ConfigurationPath -Value $BootConfiguration.ConfigurationPath 
$report | Add-Member -MemberType NoteProperty -name PSComputerName -Value $BIOS.PSComputerName 
$report | Add-Member -MemberType NoteProperty -name Manufacturer -Value $BIOS.Manufacturer 
$report | Add-Member -MemberType NoteProperty -name Version -Value $BIOS.Version 
$report | Add-Member -MemberType NoteProperty -name Caption -Value $OS.Caption 
$report | Add-Member -MemberType NoteProperty -name CSDVersion -Value $OS.CSDVersion 
$report | Add-Member -MemberType NoteProperty -name OSArchitecture -Value $OS.OSArchitecture 
$report | Add-Member -MemberType NoteProperty -name OSLanguage -Value $OS.OSLanguage 

$report | export-csv .\file.csv -NoTypeInformation