代码:
sAMAccountName ADGroups
-------------- --------
PLXXXXX ADGroup1, ADGroup2, ADGroup3
CZYYYYY ADGroup1, ADGroup2, ADGroup3, ADGroup4
CHAAAAA ADGroup10, ADGroup20
本准则给我的结果如下:
#ifdef NDEBUG
#define assert(condition) ((void)0)
#else
#define assert(condition) /*implementation defined*/
#endif
有人可以修改此代码以获得类似此文件的结果吗?:
<?xml version="1.0" encoding="utf-8" ?>
<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:prism="clr-namespace:Prism.Mvvm;assembly=Prism.Forms"
xmlns:views="clr-namespace:GitRemote.Views;assembly=GitRemote"
prism:ViewModelLocator.AutowireViewModel="True"
x:Class="GitRemote.Views.PublicRepositoryPage"
CurrentPage="{Binding CurrentTabPage, Mode=OneWayToSource}">
<views:RepositoryNewsPage Title="News"/>
<views:FileExplorerPage Title="Code"/>
<!--<views:CommitsPage/>
<views:PublicIssuesPage/>-->
</TabbedPage>
我也希望将它存储到CSV文件中。
问候!
答案 0 :(得分:0)
最后我做到了!有很大帮助你们:)。 150k用户的表现大约是15-20分钟,这在我看来很不错。
代码是:
#Import-Module ServerManager
#Add-WindowsFeature RSAT-AD-PowerShell
#Europe
Import-Module ActiveDirectory
$users = Get-ADUser -Server europe.mycompanyname.com -Filter * -Properties MemberOf #-ResultSetSize 1000
Write-Host Found ($users.count) users from europe
$list = [System.Collections.ArrayList]@()
foreach ($user in $users) {
$sAMAccountName = $user.samaccountname
$groups = if ($user.MemberOf) { $user.MemberOf -replace '^CN=([^,]+),OU=.+$','$1' -join ';' | Out-String } else { '' }
$entry = [Ordered]@{ "sAMAccountName" = $user.samaccountname; "ADGroups" = $groups;}
$list.Add((New-Object psobject -Property $entry)) | Out-Null
}
Write-Host Processed ($list.count) users from europe
$list | Export-Csv -NoType -Encoding UTF8 -Path E:\temp\europe.csv
#NMEA
Import-Module ActiveDirectory
$users = Get-ADUser -Server nmea.mycompanyname.com -Filter * -Properties MemberOf #-ResultSetSize 1000
Write-Host Found ($users.count) users from nmea
$list = [System.Collections.ArrayList]@()
foreach ($user in $users) {
$sAMAccountName = $user.samaccountname
$groups = if ($user.MemberOf) { $user.MemberOf -replace '^CN=([^,]+),OU=.+$','$1' -join ';' | Out-String } else { '' }
$entry = [Ordered]@{ "sAMAccountName" = $user.samaccountname; "ADGroups" = $groups;}
$list.Add((New-Object psobject -Property $entry)) | Out-Null
}
Write-Host Processed ($list.count) users from nmea
$list | Export-Csv -NoType -Encoding UTF8 -Path E:\temp\nmea.csv
#ASIAPACIFIC
Import-Module ActiveDirectory
$users = Get-ADUser -Server asiapacific.mycompanyname.com -Filter * -Properties MemberOf #-ResultSetSize 1000
Write-Host Found ($users.count) users from asiapacific
$list = [System.Collections.ArrayList]@()
foreach ($user in $users) {
$sAMAccountName = $user.samaccountname
$groups = if ($user.MemberOf) { $user.MemberOf -replace '^CN=([^,]+),OU=.+$','$1' -join ';' | Out-String } else { '' }
$entry = [Ordered]@{ "sAMAccountName" = $user.samaccountname; "ADGroups" = $groups;}
$list.Add((New-Object psobject -Property $entry)) | Out-Null
}
Write-Host Processed ($list.count) users from asiapacific
$list | Export-Csv -NoType -Encoding UTF8 -Path E:\temp\asiapacific.csv
#americas
Import-Module ActiveDirectory
$users = Get-ADUser -Server americas.mycompanyname.com -Filter * -Properties MemberOf #-ResultSetSize 1000
Write-Host Found ($users.count) users from americas
$list = [System.Collections.ArrayList]@()
foreach ($user in $users) {
$sAMAccountName = $user.samaccountname
$groups = if ($user.MemberOf) { $user.MemberOf -replace '^CN=([^,]+),OU=.+$','$1' -join ';' | Out-String } else { '' }
$entry = [Ordered]@{ "sAMAccountName" = $user.samaccountname; "ADGroups" = $groups;}
$list.Add((New-Object psobject -Property $entry)) | Out-Null
}
Write-Host Processed ($list.count) users from americas
$list | Export-Csv -NoType -Encoding UTF8 -Path E:\temp\americas.csv