PS从AD获取信息:group_name,employeeid,name,samacoountname

时间:2016-10-19 14:00:42

标签: powershell

我正试图从AD获取一些信息。我需要一个包含4列的csv:group_name,emplyeeid,name和sammacount名称,用于多个安全组。 我有第一个让我成为小组成员和名字的人: Get-ADGroup -Filter {Name-like" security_group *"} | foreach {$ group =

$_.Name;  Get-ADGroupMember $group | select @{N='group'; E={$group}},Name} | select group,Name| Export-CSV -Path C:\temp\test.csv 

另一个让我获得员工姓名,samacoountname:

Get-ADGroup -filter {Name -like "group_name*"} |
foreach { 
 Write-Host "Exporting $($_.name)"
 $name = $_.name -replace " ","-"
 $file = Join-Path -path "C:\temp\test" -ChildPath "$name.csv"
 Get-ADGroupMember -Identity $_.distinguishedname -Recursive |  
 Get-ADObject -Properties SamAccountname,employeeid |
 Select employeeid,Name,SamAccountName |
 Export-Csv -Path $file -NoTypeInformation
}

这为每个组提供了一个不同的csv文件。没关系,因为我可以将所有内容复制到同一个csv。 我试图把所有这些都放到一个脚本中给我所有4个列,但我似乎无法做到这一点。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

我明白了:

Get-ADGroup -filter {Name -like "group_name*"} |
foreach { 
 Write-Host "Exporting $($_.name)"
 $name = $_.name -replace " ","-"
 $file = Join-Path -path "C:\temp\test" -ChildPath "$name.csv"
 Get-ADGroupMember -Identity $_.distinguishedname -Recursive |  
 Get-ADObject -Properties SamAccountname,employeeid |
 Select @{N='group'; E={$name}},employeeid,Name,SamAccountName |
 Export-Csv -Path $file -NoTypeInformation
}