http://technet.microsoft.com/en-us/library/aa997663.aspx
http://www.theemailadmin.com/2010/10/new-mailbox-command/
Example one
This command creates an Active Directory user for John Smith in the CorpUsers OU, with a mailbox on the UserDatastore database, and an initial password that must be changed at next logon. It first prompts you for the password which it will store “-AsSecureString” meaning that it cannot be displayed again.
$password = Read-Host "Enter password" -AsSecureString New-Mailbox -UserPrincipalName jsmith@example.com -Alias john -Database "UserDatastore" -Name JohnSmith –OrganizationalUnit CorpUsers -Password $password -FirstName John -LastName Smith -DisplayName "John Smith" -ResetPasswordOnNextLogon $True
Example two
This command creates a resource mailbox for a conference room in the CorpResources OU, using the CorpResources database, and requiring the password to be set at next logon. This sets the alias as ChaConf1, and will prompt you for the password once you hit enter.
New-Mailbox -UserPrincipalName CharlotteConferenceRoom1@example.com -Alias ChaConf1 -Name CharlotteConferenceRoom1 -Database "CorpResources" -OrganizationalUnit ConferenceRooms -Room -ResetPasswordOnNextLogon $True
Example three
This command creates a mailbox for an existing user without a mailbox.
Enable-Mailbox -Identity:’example.com/CorpUsers/Joe Smith' -Alias:'JoeSmith' -Database: 'UserDatastore'
This is just a taste of what you can do with PowerShell and the new-mailbox command. There is even more information available about using the new-mailbox command using the online help in the shell, or on TechNet.
http://www.exchangepedia.com/blog/2006/12/id-written-about-how-to-bulk-create.html
http://exchangepedia.com/2006/11/exchange-server-2007-bulk-creation-of-mailboxes-using-exchange-management-shell.html
This would mailbox enable every user in the "finance" OU:
Get-User -OrganizationalUnit contoso.com/finance | Enable-Mailbox