2017-08-11 11 views
0

メンバーとメールアドレスを含むすべてのADグループを抽出するスクリプトを手伝ってくれる人がいれば幸いです。私はすべてのADグループとそのメンバーを抽出する投稿の1つでそれを見つけたスクリプトを実行していますが、メールアドレスを含める方法もわかりません。ご助力ありがとうございます。各グループのグループ/メンバーのメンバーとメールアドレス

$Groups = Get-ADGroup -Filter * -SearchBase 'OU,OU,OU,OU,OU,DC,DC,DC' #creates a variable with the name Groups and stores all the groups into it 

$Results = foreach($Group in $Groups){ #looks for members in each group and stores them in Results 

    Get-ADGroupMember -Identity $Group | foreach { 

     [pscustomobject]@{ 

      GroupName = $Group.Name 

      Name = $_.Name 

      } 

     } 

    } 

$Results| sort -Property GroupName | Export-Csv -Path c:\temp\groups.csv -NoTypeInformation #stores results in a csv 
+0

'[pscustomobject] @ {...}'ハッシュテーブルに 'mail'属性を使用して' Email'フィールドを追加する必要があります。 – Vesper

+0

助けていただきありがとうございますが動作しません。新しい変数に-SearchBaseを追加してメールアドレスプロパティをフィルタリングし、ループに追加する必要があるようです。いくつかのことを試してみましたが、うまくいきません。 – MrDevo

答えて

2

あなたforeachループ内でのユーザの電子メールアドレスをキャプチャする必要があります、そしてあなたは、ユーザーのプロパティを調べることでそれを行う必要があります - グループメンバーのリストが唯一のメンバーDNと名前が付いています。

Get-ADGroupMember -Identity $Group | foreach { 
    $u = get-aduser $_ -properties mail ##plus any other user properties you need 
    [pscustomobject]@{ 
     GroupName = $Group.Name 
     Name = $u.Name 
     Email = $u.mail 
    } 
} 
+0

ありがとうございました!チャームのように働いた! – MrDevo

関連する問題