到目前為止,我有一些代碼,但希望它為每個組的用戶生成一個包含多行的表。
目前,它創建了一個這樣的表:
| 團體 | 用戶 |
|---|---|
| abcgroup1 | 愛麗絲 |
| abcgroup1 | 鮑勃 |
| abcgroup2 | 鮑勃 |
| abcgroup2 | 杰森 |
| abcgroup3 | 前夕 |
我希望它改為創建一個這樣的表:
| 團體 | 用戶 |
|---|---|
| abcgroup1 | 愛麗絲 鮑勃 |
| abcgroup2 | 鮑勃· 杰森 |
| abcgroup3 | 前夕 |
$Groups = get-adgroup -Filter 'name -like "*abc*"'
$Results = foreach( $Group in $Groups ){
Get-ADGroupMember -Identity $Group | foreach {
[pscustomobject]@{
Group = $Group.Name
Users = $_.Name
}
}
}
$Results
$Results | Export-Csv C:\abc_search.txt -NoTypeInformation
uj5u.com熱心網友回復:
您可以-join通過CRLF 使用運算子連接`r`n。這將導致多行string:
$Groups = Get-ADGroup -Filter "name -like '*abc*'"
$Results = foreach($Group in $Groups)
{
[pscustomobject]@{
Group = $Group.Name
Members = (Get-ADGroupMember -Identity $Group).Name -join "`r`n"
}
}
$Results | Format-Table -Wrap -Autosize
$Results | Export-Csv C:\abc_search.csv -NoTypeInformation
請注意,我正在使用-Wrapon Format-Table,需要strings在控制臺上正確顯示多行。
您可以使用的另一個選項被Out-String認為還需要使用.TrimEnd()方法來擺脫尾隨的新行:
Members = ((Get-ADGroupMember -Identity $Group).Name | Out-String).TrimEnd()
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/349631.html
上一篇:csv標題中無法識別的字符
