天天看點

<Power Shell>11 查找Active Directory中的所有組同組成員

今天突然有人問我,如果你是我,如何找出那些具有相同AD的組的成員呢?

其實,我們通過簡單的解析DirectoryServices.DirectorySearcher或者[adsisearcher]類的輸出,我們就能夠得到。

下面的示例由具有相同的組成員資格的組的數目對結果進行分組和排序:

1

2

3

4

5

6

7

8

9

10

11

12

<code>$Searcher</code> <code>= </code><code>[adsisearcher]</code><code>'(member=*)'</code>

<code>$Searcher</code><code>.PageSize = 500</code>

<code>$Searcher</code><code>.FindAll() |  </code><code>ForEach-Object</code> <code>{</code>

<code>                                                     </code> 

<code>    </code><code>New-Object</code> <code>-TypeName</code> <code>PSCustomObject</code> <code>-Property</code> <code>@{</code>

<code>        </code><code>DistinguishedName = </code><code>$_</code><code>.Properties.distinguishedname[0]</code>

<code>        </code><code>Member = </code><code>$_</code><code>.Properties.member</code> <code>-join</code> <code>';'</code>

<code>    </code><code>}</code>

<code>} | </code><code>Group-Object</code> <code>-Property</code> <code>member |</code>

<code>Where-Object</code> <code>{</code><code>$_</code><code>.Count </code><code>-gt</code> <code>1} |</code>

<code>Sort-Object</code> <code>-Property</code> <code>Count</code> <code>-Descending</code>

輸出類:

<code>Count Name                      Group</code>

<code>----- ----                      -----</code>

<code>   </code><code>15 CN=Domain Users,CN=Use... {@{distinguishedname=CN=test123...</code>

<code>   </code><code>13 CN=Domain Users,CN=Use... {@{distinguishedname=CN=test456...</code>

要得到組名群組成員,組對象cmdlet的輸出應該利用expandproperty 對象進行擴大查找。

此方法輸出将被導出名為CSV檔案,生成的AD 中包括完整的相同成員的命名管道。

13

<code>$Searcher</code><code>.FindAll() | </code><code>ForEach-Object</code> <code>{</code>

<code>                                       </code> 

<code>} | </code><code>Group-Object</code> <code>-Property</code> <code>member | </code><code>Where-Object</code> <code>{</code><code>$_</code><code>.Count </code><code>-gt</code> <code>1} |</code>

<code>Sort-Object</code> <code>-Property</code> <code>Count</code> <code>-Descending</code> <code>|</code>

<code>Select-Object</code> <code>-ExpandProperty</code> <code>Group |</code>

<code>Export-Csv</code> <code>-Path</code> <code>GroupWithIdenticalMembership.csv</code> <code>-NoTypeInformation</code>

就像下面我得到的那樣

<a target="_blank" href="http://blog.51cto.com/attachment/201306/103044234.jpg"></a>

     本文轉自cantgis 51CTO部落格,原文連結:http://blog.51cto.com/cantgis/1229883,如需轉載請自行聯系原作者