Solved

Exchange 2010 Powershell CMDLET

Posted on 2013-11-05
7
532 Views
Last Modified: 2013-11-05
We have an OU with about 40 user but about 35 are non mail enabled (no mailbox or mail contact) accounts. We want to give those 35 users a mailbox now. Is there a quick PS cmdlet that can do this is bulk for all users in that OU. Also the 5 or so users that have mailboxes, shouldn't be affected. Thanks in advance.
0
Comment
Question by:timgreen7077
  • 4
  • 3
7 Comments
 
LVL 53

Expert Comment

by:Will Szymkowski
ID: 39625974
Prertty easy for this. Use the folliowing powershell command below.

Construct your CSV like below...

sAMAccountName               Database
jsmith                                    server1\databasename
sthomas                                server1\databasename
etc....

$UserList = Import-Csv "c:\yourCSVfile.csv"
foreach ($Mailbox in $UserList) {
$Mailbox.sAMAccountName
$Mailbox.Database
Enable-Mailbox -Identity $Mailbox.sAMAccountName -Database $Mailbox.Database

Open in new window


This will create mailboxes for all AD users that are in the CSV file that do not already have a mailbox assocaited with it.

Will.
0
 

Author Comment

by:timgreen7077
ID: 39626001
Spec01:
you have an open bracket '{' where does it close, and also, how do I save this so that I can run it.
0
 
LVL 53

Accepted Solution

by:
Will Szymkowski earned 500 total points
ID: 39626008
Opps! put a "}" on line 6, See below...

$UserList = Import-Csv "c:\yourCSVfile.csv"
foreach ($Mailbox in $UserList) {
$Mailbox.sAMAccountName
$Mailbox.Database
Enable-Mailbox -Identity $Mailbox.sAMAccountName -Database $Mailbox.Database 
}

Open in new window


- Open notepad and then save it in there
- Re-name the file from txt to .ps1.
0
IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 

Author Comment

by:timgreen7077
ID: 39626030
unfortunately I don't know much about powershell. I have  done all that you asked. please instruct on how to run this, or suggest an EMC cmdlet. thanks for your help
0
 

Author Comment

by:timgreen7077
ID: 39626037
this is the error I receive:
The term 'Enable-Mailbox' is not recognized as the name of
the spelling of the name, or if a path was included, verif
At C:\create.ps1:5 char:15
+ Enable-Mailbox <<<<  -Identity $Mailbox.sAMAccountName -
    + CategoryInfo          : ObjectNotFound: (Enable-Mail
    + FullyQualifiedErrorId : CommandNotFoundException
0
 
LVL 53

Assisted Solution

by:Will Szymkowski
Will Szymkowski earned 500 total points
ID: 39626051
All you need to do is Open the EMS (Exchange Management Shell) navigate to the path where you saved the .ps1 file. from there do the following

If you save the .ps1 file to your local C drive then it will look like below... path is C:\> and \scriptname.ps1 is how to launch it.
Example...
c:\> \scriptname.sp1

If you are launching this from Powershell itself you need to add the snap-in for Exchange. This means Exchange tools also needs to be installed on the machine you are running it from.

Add-PSSnapin Microsoft.Exchange.Management.PowerShell.Admin

If you are not familiar with getting the powershell snap-in to work like shown above just run the script in the Exchange Management Shell.

Will.
0
 

Author Comment

by:timgreen7077
ID: 39626054
Ok, I got it to work. I did this is the EMC and removed the server name/Database and just put the DB only and it worked. Thanks for all your help
0

Featured Post

Why do Marketing keep bothering you?

Is your marketing department constantly asking for new email signature updates? Are they requesting a different design for every department? Do they need yet another banner added? Don’t let it get you down! There is an easy way to manage all of these requests...

Join & Write a Comment

Not sure what the best email signature size is? Are you worried about email signature image size? Follow this best practice guide.
Local Continuous Replication is a cost effective and quick way of backing up Exchange server data. The following article describes the steps required to configure Local Continuous Replication. Also, the article tells you how to restore from a backup…
In this video we show how to create a Contact in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.: First we need to log into the Exchange Admin Center. Navigate to the Recipients >> Contact ta…
how to add IIS SMTP to handle application/Scanner relays into office 365.

760 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now