PowerShell列出来自特定组织单位的多个广告组成员资格

PowerShell列出来自特定组织单位的多个广告组成员资格,powershell,active-directory,membership,active-directory-group,ou,Powershell,Active Directory,Membership,Active Directory Group,Ou,我有一个需要得到所有的广告组和他们各自的成员从一个特定的广告OU。我的代码在写入主机屏幕时会这样做,但我无法将其干净地输出到.xml,这是请求的格式,但此时我将采用任何格式。管理层希望输出文件类似于: Group1 User1 Group1 User2 Group1 User3 Group2 User1 Group2 User2 Group2 User3 etc... 有人有什么想法吗 $groupName = Get-ADGroup -SearchBase "OU=Groups,DC=do

我有一个需要得到所有的广告组和他们各自的成员从一个特定的广告OU。我的代码在写入主机屏幕时会这样做,但我无法将其干净地输出到.xml,这是请求的格式,但此时我将采用任何格式。管理层希望输出文件类似于:

Group1 User1
Group1 User2
Group1 User3 
Group2 User1
Group2 User2
Group2 User3
etc...
有人有什么想法吗

$groupName = Get-ADGroup -SearchBase "OU=Groups,DC=domain,DC=com" -Filter * | Select-Object sAMAccountName

foreach ( $groupMember in $groupName )
{
   # $groupMember
   Get-ADGroupMember -Identity $groupMember.sAMAccountName | Export-Clixml -Path C:\temp.xml -Force

假设您希望显示与您一样的两列文本文件,该文件不是XML格式的文件。您可以使用using
选择对象
,然后使用所选格式导出该信息:

$GroupName = Get-ADGroup -SearchBase "OU=Groups,DC=domain,DC=com" -Filter * | Select-Object -ExpandProperty sAMAccountName

$Members = foreach ($GroupMember in $GroupName) {
   Get-ADGroupMember -Identity $GroupMember | Select-Object @{Name="Group";Expression={$GroupMember}},name
}
"$(Members.Group) $($Members.Name)"  | Out-File C:\temp.txt
#Alternatively for a .CSV
$Members | Export-CSV C:\temp.csv

假设您希望显示与您一样的两列文本文件,该文件不是XML格式的文件。您可以使用using
选择对象
,然后使用所选格式导出该信息:

$GroupName = Get-ADGroup -SearchBase "OU=Groups,DC=domain,DC=com" -Filter * | Select-Object -ExpandProperty sAMAccountName

$Members = foreach ($GroupMember in $GroupName) {
   Get-ADGroupMember -Identity $GroupMember | Select-Object @{Name="Group";Expression={$GroupMember}},name
}
"$(Members.Group) $($Members.Name)"  | Out-File C:\temp.txt
#Alternatively for a .CSV
$Members | Export-CSV C:\temp.csv

我相信您在“(Members.Group)”第5行chr 3前面缺少了$,不应该改为“$($Members.Group)”吗?因为当我运行此脚本时,它给了我一个错误“术语'Members.Group'未被识别为cmdlet的名称,function…”

$GroupName = Get-ADGroup -SearchBase "OU=Groups,DC=domain,DC=com" -Filter * | Select-Object -ExpandProperty sAMAccountName

$Members = foreach ($GroupMember in $GroupName) {
   Get-ADGroupMember -Identity $GroupMember | Select-Object @{Name="Group";Expression={$GroupMember}},name
}
"$($Members.Group) $($Members.Name)"  | Out-File C:\temp.txt
#Alternatively for a .CSV
$Members | Export-CSV C:\temp.csv

我相信您在“(Members.Group)”第5行chr 3前面缺少了$,不应该改为“$($Members.Group)”吗?因为当我运行此脚本时,它给了我一个错误“术语'Members.Group'未被识别为cmdlet的名称,function…”

$GroupName = Get-ADGroup -SearchBase "OU=Groups,DC=domain,DC=com" -Filter * | Select-Object -ExpandProperty sAMAccountName

$Members = foreach ($GroupMember in $GroupName) {
   Get-ADGroupMember -Identity $GroupMember | Select-Object @{Name="Group";Expression={$GroupMember}},name
}
"$($Members.Group) $($Members.Name)"  | Out-File C:\temp.txt
#Alternatively for a .CSV
$Members | Export-CSV C:\temp.csv
给出的“理想输出”不是XML;它看起来像纯文本;它看起来像纯文本。