Book Image

Microsoft Exchange Server PowerShell Essentials

By : Biswanath Banerjee
Book Image

Microsoft Exchange Server PowerShell Essentials

By: Biswanath Banerjee

Overview of this book

PowerShell has become one of the most important skills in an Exchange administrator's armory. PowerShell has proved its mettle so widely that, if you're not already starting to learn PowerShell, then you're falling behind the industry. It isn't difficult to learn PowerShell at all. In fact, if you've ever run commands from a CMD prompt, then you'll be able to start using PowerShell straightaway. This book will walk you through the essentials of PowerShell in Microsoft Exchange Server and make sure you understand its nitty gritty effectively. You will first walk through the core concepts of PowerShell and their applications. This book discusses ways to automate tasks and activities that are performed by Exchange administrators and that otherwise take a lot of manual effort. Microsoft Exchange PowerShell Essentials will provide all the required details for Active Directory, System, and Exchange administrators to help them understand Windows PowerShell and build the required scripts to manage the Exchange Infrastructure.
Table of Contents (17 chapters)
Microsoft Exchange Server PowerShell Essentials
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

Managing Databases


Here is a simple script that will display the number and type of mailboxes in the Mailbox Database on the console. For example, if you have five Mailbox Databases in your organization and your user's primary mailbox, the archive mailbox and arbitration mailboxes are distributed across these databases; the script will report these different mailbox types for each mailbox database:

$DBs= get-mailboxdatabase | Select Name 
$UsersPerDB=@() 
get-mailboxdatabase | foreach-object { 
            $Object=New-Object PSObject   
        $Object | Add-Member NoteProperty -Name "DatabaseName" -Value $_.name
        $Object | Add-Member NoteProperty -Name "No of User Mailboxes" -Value (get-mailbox -database $_.name).count
        $Object | Add-Member NoteProperty -Name "No of Archive Mailboxes" -Value (get-mailbox -database $_.name -Archive).count
        $Object | Add-Member NoteProperty -Name "No of Arbitration Mailboxes" -Value  (get-mailbox -database $_.name -Arbitration).count...