Appelle-moi stupide, mais je perds mes cheveux avec celui-ci.
J'ai deux résultats d'un get-WmiObject: p>
( ($cpu | Select-Object Name, Description) + ($mb | Select-Object Manufacturer, Product) ) | ConvertTo-Csv -NoTypeInformation
7 Réponses :
Vous pouvez toujours ajouter toutes les propriétés dont vous avez besoin pour un objet personnalisé PowerShell qui a ce dont vous avez besoin, puis de vider les CV. Jetez un coup d'œil à cette page et voyez si elle suites ce dont vous avez besoin. p>
Il y a, dans PowerShell 2, voir l'exemple de @dangph
Que diriez-vous comme ça?
Presque! Cela rend effectivement quatre colonnes, mais dans deux lignes i>. Chaque ligne contenant deux valeurs et deux nuls. Maintenant, si nous pouvions faire une sorte d'union "...
Il y a -Join "A", "B" code>, j'essaie de comprendre comment l'utiliser.
Vous avez besoin de PowerShell V2 pour ce qui suit.
$cpu = Get-WmiObject -Class Win32_Processor
$mb = Get-WmiObject -Class Win32_BaseBoard
$props = @{
Name = $cpu.Name
Description = $cpu.Description
Manufacturer = $mb.Manufacturer
Product = $mb.Product
}
New-Object PSObject -Property $props | ConvertTo-Csv -NoTypeInformation
Bien que cela fonctionne parfaitement pour la question des OPS, ceux qui arrivent ici à la recherche d'une jonction de plusieurs rangées de données devront poursuivre une stratégie alternative.
@Kylemit, Select-Object code> avec des propriétés calculées peut vous être utile.
Vous pouvez commencer par un objet, puis ajouter des propriétés de l'autre:
Est-ce ce que vous recherchez? Un peu plus longtemps que je m'attendais, car la CPU $ et MB $ ont des propriétés de nom et de fabricant. Mais la première idée est l'objet personnalisé par hasard.
($cpu | Select-Object Name, Description),($mb | Select-Object Manufacturer, Product) |
Select-Object @{name='NameOrManu';expr={$_.Name + $_.Manufacturer}},
@{name='DescrOrProd';expr={$_.Description + $_.Product}} |
ConvertTo-Csv -NoTypeInformation
Il y a un join-objet code> fonction sur poshcode pour le faire, mais il est enterré Intérieur Rejoindre-Collection Code> et non exporté. $cpu = Get-WmiObject -Class Win32_Processor
$mb = Get-WmiObject -Class Win32_BaseBoard
Join-Object $cpu $mb | Select Name, Description, Manufacturer, Product
the join-objet code> , décrit dans Dans PowerShell, quelle est la meilleure façon de rejoindre deux tables en une fois? a beaucoup plus de capacités, mais peut également être utilisé comme ceci: < Pré> xxx pré> p>