This post is also available in: angielski
Aby wiedzieć co się dzieje w grupach dystrybucyjnych na przestrzeni czasu, możemy utworzyć skrypt, który będzie sprawdzał członkowstwo w grupach i zapisywał wynik do pliku.
Na początku określamy czy chcemy sprawdzić wszystkie dostępne grupy czy może chcemy jest wskazać np.: podając je w pliku.
aby pobrać grupy z pliku użyjemy:
$DLs = get-content d:\scripts\DLgroups.txt
natomiast jeżeli chcemy mieć wszystkie dostępne grupy:
$DLs = get-distributiongroup -resultsize unlimited | select name
foreach ($dl in $DLs){ if (!(get-distributiongroup $dl)){ Write-Host "$dl is not valid" } else { $dl_tmp = get-distributiongroup $dl $outfile = "d:\scripts\DL_$($dl_tmp.name)_.txt" Add-Content $outfile get-Date Add-Content $outfile "$($dl_tmp.name) $($dl_tmp.SMTPAddress)" Add-Content $outfile "Members" Add-Content $outfile "Alias;Displayname;Company;Title;emailaddress" $members = get-distributiongroupmember $($dl_tmp.alias) foreach ($member in $members){ $user = $member.alias + ";" + $member.DisplayName + ";" + $member.Company + ";" + $member.Title + ";" + $member.primarysmtpaddress.local + "@" + $member.Primarysmtpaddress.domain Add-Content $outfile $user } } }
Dzięki temu otrzymamy osobny plik dla każdej z grup wraz z listą jej członków.