Export AD Groups as bat file

:::: Batch Script Start ::::
@ECHO OFF
SETLOCAL EnableDelayedExpansion

SET FileName=C:Report.csv
SET AG=0
SET EG=0
SET CT=0
SET NE=0
SET GN=

FOR /F %%T IN (‘DSQuery * -Filter “(&(objectClass=Group))” -Limit 0’) DO SET /a AG+=1 >NUL
FOR /F %%T IN (‘DSQuery * -Filter “(&(objectClass=Group)(^!member=*))” -Limit 0’) DO SET /a EG+=1 >NUL
SET /a NE=!AG!-!EG!

ECHO Total Groups in Active Directory %AG% out of them %EG% are empty.&&ECHO.
ECHO Group,Members>“!FileName!”
TITLE Exporting !NE! Non-Empty AD Groups.

FOR /F “delims=” %%G IN (‘DSQuery * -Filter “(&(objectClass=Group)(member=*))” -Limit 0’) DO (
   FOR /F “delims=” %%v IN (‘DSQuery * %%G -l -q -Attr Name -Limit 0’) DO SET GN=%%v
   SET /a CT+=1 >NUL
   ECHO !CT!. Exporting: !GN!
   FOR /F “delims=” %%M IN (‘DSGET Group %%G -Members’) DO (
       FOR /F “delims=” %%U IN (‘DSQuery * %%M -l -q -Attr displayName’) DO (
       ECHO !GN!,%%U>>“!FileName!”)))

TITLE Export complete.
ECHO.&&ECHO Export complete, please check ’!FileName!’ file.
EXIT /B 0
:::: Batch Script End ::::

Leave a comment

Your email address will not be published. Required fields are marked *

CAPTCHA ImageChange Image