繁体   English   中英

将OU路径中的多个安全组的成员导出到CSV

[英]Exporting Members of Multiple Security Groups within an OU Path to a CSV

我正在尝试将安全组的用户导出到.csv文件。 但是,我遇到了一些困难。

到目前为止,我有这个:

Import-Module ActiveDirectory

Write-Host 'This script is used to check what users have access to a particular network drive.' `n 'Please wait...'

Start-Sleep 4

Write-Host 'Below is a list of the available DJ network drive security groups:'

Start-Sleep 3

Get-ADGroup -Filter * -SearchBase "OU=Network Drives,OU=DJ Security Groups,OU=Security Groups,DC=lan,DC=cyclops-electronics,DC=com" | FL Name

Start-Sleep 3

$SecurityGroup = Read-Host -Prompt 'From the list, please enter a security group name which corresponds to the network drive you wish to check'

Get-ADGroupMember -Identity $SecurityGroup | select name |export-csv
-Path C:\SQLApps\GroupMembers.csv -Append

Start-Sleep 1

Write-Host  'This script has completed successfully and has been exported to C:\SQLApps\GroupMembers.csv'

显示以下内容:

PS截图

当我在列表中输入一个安全组并按Enter时,它会按照应有的方式执行操作,然后将它们导出到.CSV,结果是:

Excel屏幕截图

但是,我想将屏幕快照中返回的每个组的所有成员都导出到单个.csv文件中,但将其列出在各自的SG下。 这可能吗?

尝试这样的事情:

Import-Module -Name ActiveDirectory
$Groups = Get-ADGroup -Filter * -SearchBase "OU=Network Drives,OU=DJ Security Groups,OU=Security Groups,DC=lan,DC=cyclops-electronics,DC=com"

$Report = foreach ($Group in $Groups) {
    $Members = Get-ADGroupMember -Identity $Group
    foreach ($Member in $Members) {
        [PSCustomObject]@{
            GroupName = $Group.Name
            MemberName = $Member.Name
        }
    }
}

$Report | Export-Csv -Path C:\SQLApps\GroupMembers.csv -NoTypeInformation

伙计们通过强迫自己使用Powershell处理有时使自己陷入地狱般境地的一切事情。

CSVDE是由Microsoft为此提供的(将AD导出为CSV)。

一个命令行: csvde.exe -f <CSV_filename> -r "<my_ldap_filer>" -d search_base -p <my_scope> -s <my_servername>[:<LDAP_port>] -l <attribute_to_list> -X

JF

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM