Using Powershell with Exchange 2013 (Exchange Management Shell)
Applies to: Exchange Online, Exchange Server 2013
Topic Last Modified: 2015-06-04
Learn about the Exchange Management Shell, also known as the Exchange PowerShell. This article describes accessing the management shell for Microsoft Exchange Server 2013 and provides links to other topics that will help you learn how to use the Exchange PowerShell.
The Exchange Management Shell, built on Windows PowerShell technology, provides a powerful command-line interface for Microsoft Exchange Server 2013 that enables automation of administrative tasks. With the Shell, you can manage every aspect of Exchange. You can enable new email accounts, create Send and Receive connectors, configure database properties, manage distribution groups, and more. The Shell can perform every task that can be performed by the Exchange Administration Center (EAC) plus things that can't be done in the EAC. In fact, when you do something in the EAC, it's the Shell that's doing the work behind the scenes.
The Shell also provides a robust and flexible scripting platform that can reduce the complexity of current Microsoft Visual Basic scripts. Tasks that previously required many lines in Visual Basic scripts can now be done by using as little as one line of code in the Shell. The Shell provides this flexibility because it doesn't use text as the basis for interaction with the system, but uses an object model based on the Microsoft .NET platform. This object model enables the Shell cmdlets to apply the output from one command to subsequent commands when they are run.
If you want to start using the Shell immediately, see the “Exchange Management Shell basics” section later in this topic. For a list of cmdlets included with Exchange 2013, see Exchange 2013 cmdlets. Otherwise, continuing reading here for more information about the Shell in Exchange 2013.
Looking for a list of Shell topics? See Shell documentation.
With Exchange 2013, you can connect to a remote session on a remote Exchange 2013 computer to perform commands on that remote computer. Whether you use the Shell to administer a local server or administer a server across the country, remote Shell is used to perform the operation in Exchange 2013. If the Exchange management tools are installed and you want to use the Shell, follow the procedure in Open the Shell.
In Exchange 2013, when you click the Shell shortcut, Windows PowerShell opens. Unlike in Microsoft Exchange Server 2007, which uses local Windows PowerShell, a Windows PowerShell snap-in for Exchange isn't loaded. Instead, Windows PowerShell connects to the closest Exchange 2013 server using a required component called Windows Remote Management 3.0, performs authentication checks, and then creates a remote session for you to use. When the remote session is created, you're given access only to the cmdlets and the parameters associated with the management role groups and management roles you're assigned. For more information about how Exchange uses role groups and roles to manage who can do what tasks, see Permissions.
A benefit of remote Shell is that you don't need to install Exchange-specific tools on your computer. With Windows PowerShell, .NET Framework 4.5 and Windows Remote Management 3.0 installed on any computer running Windows 7, Windows 8, Windows Server 2008 R2 Service Pack 1 (SP1), or Windows Server 2012, you can connect to a remote Exchange 2013 computer to administer it. However, while it's possible to manage an Exchange 2013 server with just Windows PowerShell, .NET Framework 4.5, and Windows Remote Management 3.0, we recommend that you install the Exchange management tools on any computer that you use to manage Exchange 2013. Without the Exchange management tools installed, you need to connect to the remote Exchange 2013 server manually, and you don't have access to the additional capabilities that the Exchange management tools provide.
For more information about connecting to Exchange 2013 servers without the Exchange management tools installed, see Connect to Exchange using remote Shell.
The following list provides links to topics that will help you learn about and use the Exchange Management Shell.
Exchange Management Shell basics