我是 Powershell 的菜鳥,所以我想知道如何解決這個問題。本質上,我有一個腳本,可以在其中獲取使用 foreach 回圈的人的詳細資訊。問題是,我想把它放到一個列和行的表中,如下所示:
| 年齡 | 眼睛的顏色 | 性別 |
|---|---|---|
| 46 | 綠色 | 男性 |
就目前而言,我有一個創建物件的腳本,但這不正確。該物件是按人創建的,我不希望這樣。我需要為每人添加行。此外,它不是表格格式,需要匯出到 Excel。關于最佳方法的任何想法?
謝謝。
$people = #variable containing multiple people
foreach ($person in $people){
$age = #some get command
$eyecolour = #some get command
$gender = #some get command
$object = new-object psobject -Property @{
age = $age
eyecolour = $eyecolour
gender = $gender
}
Write-Host $object
}
uj5u.com熱心網友回復:
要按要求回答您的問題,至少關于“每個人”的部分您可能需要如下物件陣列:
Clear-Host
$People = "Joe","Jane","Dick"
$MyTable = New-Object System.Collections.ArrayList
ForEach ($person in $People){
$Age = Read-Host "Enter $Person's Age"
$EyeColour = Read-Host "Enter $Person's Eye Color"
$Gender = Read-Host "Enter $Person's Gender"
$object = new-object psobject -Property @{
Name = $Person
Age = $Age
Eyecolour = $EyeColour
Gender = $Gender
}
$Null = $MyTable.Add($Object)
} #End ForEach
$MyTable | Format-Table
輸出:
Enter Joe's Age: 34
Enter Joe's Eye Color: Blue
Enter Joe's Gender: Male
Enter Jane's Age: 23
Enter Jane's Eye Color: Hazel
Enter Jane's Gender: Female
Enter Dick's Age: 54
Enter Dick's Eye Color: Brown
Enter Dick's Gender: Male
Gender Name Age Eyecolour
------ ---- --- ---------
Male Joe 34 Blue
Female Jane 23 Hazel
Male Dick 54 Brown
注意:僅用于演示的讀取主機條目。
至于關于匯出到 CSV 的部分,我同意圣地亞哥的評論。
更新:這是創建 CSV 的代碼:
#Code to export Array of PSCustomObjects to CSV
$EPCSVArgs = @{NoClobber = $True
NoTypeInformation = $True
Append = $True
Path = "G:\Test\MyTable.csv"}
ForEach ($Entry in $MyTable) {
Export-Csv @EPCSVArgs -InputObject $entry
}
注意:由于某種原因,CSV 的列亂序!

uj5u.com熱心網友回復:
您看過Format-Table和Export-CSV命令列開關嗎?
另外,如果您想使用 Excel,我同意 Santiago 關于 ImportExcel 模塊的評論。
前任:
$p = @(
(New-Object psobject -Property @{age = 5; eyecolour = 'blue'; gender='male'})
(New-Object psobject -Property @{age = 10; eyecolour = 'brown'; gender='female'})
)
$p | format-table
$p | Export-Csv "$PSScriptRoot\p_out.csv"
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/521964.html
標籤:擅长电源外壳
