Listar Usuarios de los grupos de seguridad con powershell

Con frecuencia me piden repasar los usuarios de los grupos de seguridad o de las listas de distribución
aquí realizamos las listas de distribución Link hoy veremos como mirar los grupos de seguridad
Una buena practica es crear un código para diferenciarlos en mi caso GS_XXX (Grupo de Seguridad)
ML_XXX (Mail List)
de ese modo es mas fácil filtrar nuestros grupos
Desde el PowerShell de Active Directory
(Ojo con copiar y pegar las comillas de la web , pegar en un TXT y substituirlas )
Por partes:
Listamos todos los grupos (filtrando los GS) y los introducimos en una variable
$groups = get-adgroup -Filter * | where {$_.SamAccountName -Like "*gs*"} | Select-Object SamAccountName
Captura
Creamos un Bucle que recorra las diferentes listas y almacenaremos el resultado en un CSV

foreach($Group in $Groups) {

Get-ADGroupMember -Id $Group.SamAccountName | select @{Expression={$Group.SamAccountName};Label=”Group Name”},Name | Export-CSV c:\g1\GroupsInfo2.CSV -NoTypeInformation -append -force}
Código completo
$groups = get-adgroup -Filter * | where {$_.SamAccountName -Like "*gs*"} | Select-Object SamAccountName
foreach($Group in $Groups) {
Get-ADGroupMember -Id $Group.SamAccountName | select @{Expression={$Group.SamAccountName};Label=”Group Name”},Name | Export-CSV c:\g1\GroupsInfo2.CSV -NoTypeInformation -append -force}

 
Con el CVS podemos ordenar ya cómodamente en nuestro Excel el resultado. separando por comas