Update – HOW TO: Find an email address in Active Directory

by Bharat Suneja on November 14, 2006

SKIP THIS POST and head over to Five and a half ways to find an email address in Microsoft Exchange and Active Directory, a comprehensive post that shows all the ways you can find an email address in Active Directory.
(OK, if you must really know, we merged content from this post with a previous post which shows you how to find a recipient with a specified email address using ADUC‘s Saved Queries feature.)

4 Using CSVDE/LDIFDE to find an email address:Saved Queries isn’t available in the Windows 2000 version of ADUC. You can also use CSVDE or LDIFDE to export this information to a file, using the following command:

csvde -f outputfilename.csv -d “dc=domain,dc=com” -r “(&(mailnickname=*)(proxyAddresses=smtp:[email protected]))” -l name

Replace “dc=domain,dc=com” with your AD domain name and suffix, and [email protected] with the exact email address you’re looking for.

To find all recipients who have an email address from a particular SMTP domain, you can use a wildcard, e.g.:

csvde -f outputfilename.csv -d “dc=domain,dc=com” -r “(&(mailnickname=*)(proxyAddresses=smtp:*@domain.com))” -l name

In the above example, only the name field is exported. All CSVDE/LDIFDE queries also return the object’s distinguishedName. To add more fields to the list, insert a coma after name and type new field names separated by a coma: e.g.


5 Finding email addresses using the Exchange shell (Exchange 2010/2007): The Exchange 2010/2007 shell makes it easier (once you familiarize yourself with shell basics). To get a list of all recipients with email addresses from a particular domain:

get-recipient | where {$_.emailaddresses -match “domain.com”} | select name,emailaddresses

To get a list of recipients with a particular email address:

get-recipient | where {$_.emailaddresses -match “[email protected]”} | select name,emailaddresses


{ 7 comments… read them below or add one }

Anonymous March 9, 2007 at 7:03 am

User AD accounts going to expire in 10 days. Can the AD send an notification email to that particular user everyday at 12mn?


Michelle Dunn March 14, 2008 at 10:55 pm

I noticed that many shortcuts on discovering someone’e email address are given, but why not go through an easier and specifically dedicated email locating program? I mean there are literally hundreds of them out there, and many times they can save you hours of searching with tricks. I went to
http://howtofindsomeonesemailaddress.wikidot.com/ to find out my info on using email locaters properly, but most of the others out there are also credible and well worth a look. Just my $.02


zax September 28, 2011 at 8:28 am

Just saved me loads of searching – worked perfect.
many thanks


Michael January 21, 2013 at 2:58 am

I realize that this is quite an old post but really needed some help on this one.
Is there any way I could use the below command, as mentioned by you, to search for existing accounts using a csv file that I already have which I received from my HR. This csv list has all the ex-employees with their email addresses.

“get-recipient | where {$_.emailaddresses -match “[email protected]”} | select name,emailaddresses”

Basically I would like to compare this HR list to see if those ex-employees still have existing mailboxes in exchange.


Marco March 15, 2013 at 5:55 am



ideate March 2, 2014 at 2:42 pm

Wow that was odd. I just wrote an extremely long comment but after I
clicked submit my comment didn’t show up. Grrrr…
well I’m not writing all that over again.
Anyhow, just wanted to say excellent blog!


Melaine December 8, 2014 at 10:07 am

I couldn’t resist commenting. Exceptionally well written!


Leave a Comment

{ 1 trackback }

Previous post:

Next post: