在 PowerShell 中,從 CSV 文件獲取?Group
?列的數據并遍歷輸出,可以按照以下步驟操作:
步驟說明:
-
讀取 CSV 文件:使用?
Import-Csv
?命令加載 CSV 數據。 -
提取 Group 數組:通過管道操作?
| Select-Object -ExpandProperty Group
?提取指定列的值。 -
遍歷數組:使用?
foreach
?循環或?ForEach-Object
?遍歷每個元素并輸出。
# 1.1 讀取CSV文件并提取Group列的值到數組
$groups = Import-Csv -Path "你的文件路徑.csv" | Select-Object -ExpandProperty Group# 1.2 遍歷數組并輸出所有元素
foreach ($group in $groups) {Write-Output "當前組: $group"
}# 2.1 或者使用管道簡潔寫法(效果相同):
Import-Csv "你的文件路徑.csv" | ForEach-Object { Write-Output "當前組: $($_.Group)"
}# powered by https://zhengkai.blog.csdn.net/
關鍵參數說明:
參數/命令 | 作用 |
---|---|
Import-Csv -Path | 加載 CSV 文件(路徑需替換為實際文件路徑) |
Select-Object -ExpandProperty Group | 提取名為?Group ?的列,直接返回其值數組(而非對象) |
foreach | 循環遍歷數組中的每個元素 |
$($_.Group) | 在管道中訪問當前對象的?Group ?屬性($_ ?表示當前對象) |
示例 CSV 文件內容:
(假設文件名為?groups.csv
):
Name,Group
Alice,Admin
Bob,Developer
Charlie,Admin
Diana,Manager
?執行結果:
當前組: Admin
當前組: Developer
當前組: Admin
當前組: Manager
空值處理:
如果 CSV 中存在空值,遍歷時會輸出空行。可通過條件過濾:
$groups | Where-Object { $_ } | ForEach-Object { Write-Output "組: $_" }
去重處理:
$uniqueGroups = Import-Csv groups.csv | Select-Object -ExpandProperty Group | Sort-Object -Unique?
?
終極練習:排序加去重
$uniqueGroups = Import-Csv "D:\Workspace\Data\powershell\group.csv" | Select-Object -ExpandProperty Group | Sort-Object -Unique# 1.2 遍歷數組并輸出所有元素
foreach ($group in $uniqueGroups) {Write-Output "當前組: $group"
}# powered by https://zhengkai.blog.csdn.net/