Just like Exchange Server 2010, Exchange Server 2013 has a set of pre-written scripts to help administrators manage their Exchange environment. These scripts range from the automatic rebalancing of databases in a DAG cluster to installing AntiSpam agents on the CAS or Mailbox roles. These scripts are stored in the Scripts directory of the Exchange installation directory:
C:\Program Files\Microsoft\Exchange Server\V15\Scripts
The list below is a complete list of scripts for Exchange Server 2013 Preview:
|Script Name||Script Purpose|
|AddUsersToPFRecursive.ps1||Add permissions for Client Users to Access Public Folder Content|
|AntispamCommon.ps1||?This script is referenced by other anti-spam scripts in Exchange
2007 and is not intended to be used directly.?
|CheckDatabaseRedundancy.ps1||?Checks the redundancy of databases by validating that they have at
least Nconfigured and ?healthy? copies. Active and passive copies
are both counted.?
|CheckInvalidRecipients.ps1||?This script is designed to return information on invalid recipient
objectsand possible attemtpt to fix them?
|CITSConstants.ps1||?This file contains global constants used by CI Troubleshooter library?|
|CITSLibrary.ps1||?This file contains Content Index Troubleshooter functions?|
|CITSTypes.ps1||?This file contains additional types used by CI troubleshooter library?|
|CollectOverMetrics.ps1||?Reads DAG member event logs to gather information about database
operations(such as database mounts, moves, and failovers) over
a specific time period.?
|CollectReplicationMetrics.ps1||?This script provides an active form of monitoring because it
collects metrics in real time, while the script is running.?
|Configure-EnterprisePartnerApplication.ps1||?Configures a Partner Application that uses the OAuth protocol
to authenticateto Exchange.?
|configure-SMBIPsec.ps1||?This script is to be used to help add the necessary
Ipsecconfiguration to protect SMB (File Share) communication.?
|ConfigureAdam.ps1||?Used to modify the default configuration of the Active Directory
ApplicationMode (ADAM) directory service on the Edge Transport
|ConfigureCafeResponseHeaders.ps1||Possibly modifies the OWA reponse header. CAFE is an abbreviation
for Client Access Front End.
|ConfigureNetworkProtocolParameters.ps1||?Configures a Global Catalog running on the machine on which the
script is run to listen on the standard NSPI Rpc-over-Http port 6004.
This would enable Rpc-over-Http connections from Outlook clients to
RpcProxy?ed by CAS boxes.?
|ConvertTo-MessageLatency.ps1||?This script provides administrators with a simple way to extract
serverand end-to-end latency information from the message tracking
|DagCommonLibrary.ps1||?A collection of DAG-related functions for use by other scripts.?|
|DatabaseMaintSchedule.ps1||?Random generate maintenance and quota notification schedule time
based on the specified criteria.?
|DiagnosticScriptCommonLibrary.ps1||?This script is a library of functions for common diagnostic script
executions. Diagnostic scripts to dot source file to invoke the
|Disable-AntimalwareScanning.ps1||Disables antimalware scanning.|
|Disable-InMemoryTracing.ps1||Undo the changes made by the Enable-InMemoryTracing.ps1 script.|
|Enable-AntimalwareScanning.ps1||Enables antimalware scanning.|
|enable-CrossForestConnector.ps1||Adjusts the permissions on a Send Connector to enable Cross Forest
trust for anonymous user.
|Enable-InMemoryTracing.ps1||Enables In Memory Tracing.|
|enable-OutlookCertificateAuthentication.ps1||Configure virtual directories to allow Outlook for smart card
|ExchUCUtil.ps1||?Configure Exchange Unified Messaging for use with Office
|Export-MailPublicFoldersForMigration.ps1||Exports the properties (Alias, EmailAddress, HiddenFrom Address-
listsenabled, windowsemailaddresses,entryid) of all mail enabled
public folders to a CSV file.
|Export-OutlookClassification.ps1||?Generate the Classifications.xml file for the Outlook 2007 computer.?-
|Export-PublicFolderStatistics.ps1||?Generates a CSV file that contains the list of public folders and
their individual sizes?
|Export-RetentionTags.ps1||Exports the retention tags from Exchange and can be used in conjunction
|get-AntispamFilteringReport.ps1||Report the number of messages that are blocked or put in the quarantine.|
|get-AntispamSCLHistogram.ps1||Creates a report the number of messages for each SCL rating.|
|get-AntispamTopBlockedSenderDomains.ps1||List top ten domains that sent spam.|
|get-AntispamTopBlockedSenderIPs.ps1||List top ten IP addresses that sent spam.|
|get-AntispamTopBlockedSenders.ps1||List top ten email addresses that sent spam.|
|get-AntispamTopRBLProviders.ps1||Reports which RBL providers are performing the best.|
|get-AntispamTopRecipients.ps1||Lists the top ten recipients of spam.|
|Get-UCPool.ps1||Reports on the UC Pools createed by OCS/Lync.|
|GetDatabaseForSearchIndex.ps1||?This script returns the associated mailbox database names.?|
|GetSearchIndexForDatabase.ps1||?This script returns index directories for the specified mailbox database
|GetValidEngines.ps1||Possibly returns a list of engines being used by the ForeFront filtering agent.|
|Import-MailPublicFoldersForMigration.ps1||?Imports the properties (Name,EmailAddresses,HiddenFromAddressListsEnabled,WindowsEmail-
Addresses,EntryId)# of mail enabled public folders from a CSV
file and calls the cmdLet Enable-MailPublicFolder on each one of them?
|Import-RetentionTags.ps1||Used in conjunction with the export-retentiontags.ps1 script.|
|install-AntispamAgents.ps1||Installs the Connection Filtering agent, Content Filter agent, Sender ID agent, Sender
Filter agent, Recipient Filter agent, and Protocol Analysis agent on the
Exchange server ? performed on the mailbox server.
|install-BackEndAntispamAgents.ps1||Installs only the Content Filter agent and the Protocol Analysis agent on
the Exchange server ? performed on the mailbox server.
|install-FrontEndAntispamAgents.ps1||Installs the AntiSpam agents on the Exchange server ? performed on the CAS server.|
|MailboxDatabaseReseedUsingSpares.ps1||?This script is used to validate the safety of the environment, before proceeding to swap failed database copy # to a spare disk and reseed.?|
|ManageScheduledTask.ps1||This script will allow you to add, modify or remove scheduled tasks in PowerShell.|
|Merge-PublicFolderMailbox.ps1||?Merges the contents of the given public folder mailbox with the targetpublic folder mailbox.?|
|MigrateUMCustomPrompts.ps1||?This script migrates a copy of all Exchange 2007 Unified Messaging custom prompts# to Exchange 2010. This includes prompts in all Exchange 2007 UM Dial Plans and UM Automated Attendants.?|
|Move-PublicFolderBranch.ps1||?Moves the contents of folders that reside along with the given folder branchto the target public folder milbox?|
|Move-TransportDatabase.ps1||This script will move the transport databases (mail.que) and its related logfiles to a new location+B22|
|MoveMailbox.ps1||Provides a method to move a mailbox synchronously to another mailbox database.|
|new-TestCasConnectivityUser.ps1||?This script creates a user that can be used for testing connectivityfor Client Access Servers. This script has to be run by an admin who as permissions to create users in the Active Directory. ?|
|Prepare-MoveRequest.ps1||This script is to be used for cross forest mailbox moves and creates a newuser with a copy of the source AD attributes.|
|PublicFolderToMailboxMapGenerator.ps1||?Generates a CSV file that contains the mapping of public folder branch to mailbox.?|
|RedistributeActiveDatabases.ps1||?Attempts to redistribute active databases in the specified DAG.# If required, it will also try to balance active DBs across sites.?|
|ReinstallDefaultTransportAgents.ps1||?Installs and enables default transport agents on Edge and Hub roles.?|
|RemoveUserFromPFRecursive.ps1||Removes permissions for Client Users to Access Public Folder Content|
|ReplaceUserPermissionOnPFRecursive.ps1||This script replace permissions of a user in the permission list for a publicfolder and the folders beneath it in the hierarchy with new permissions. If o permissions for the user can be found, nothing will be changed on that particular folder.|
|ReplaceUserWithUserOnPFRecursive.ps1||This script replaces a user with another user in the permissions list for apublic folder or the folders beneath it in the hierarchy. If no permission entries can be found, nothing will be changed. Note that existing permissions will not be removed.|
|Reset-AntispamUpdates.ps1||?Resets baseline antispam data to original out-of-box state.?|
|ResetAttachmentFilterEntry.ps1||?This script is used to reset the list of attachment-types that are blocked by the attachment-filtering feature in the Exchange Gateway role, to the factory set defaults.?|
|ResetCasService.ps1||?This script will reset and recreate the virtual directory for the service that you define.?|
|ResetSearchIndex.ps1||?This script will remove the Search Index Catalog associated with thespecified Mailbox Database. ?|
|ResumeMailboxDatabaseCopy.ps1||?This script will resume activation and log file replication (copy and replay)for the specified mailbox database.?|
|RollAlternateServiceAccountPassword.ps1||?Cmdlet takes IDs of multiple arrays, but operates with every one of themin isolation. All password changes to Active Directory are done after processing all arrays. The script will ask with ?medium impact? before propagating a password change to the Active Directory, especially if there were any failures setting passwords on individual CAS boxes.?|
|SearchDiagnosticInfo.ps1||?Prints the result of Get-SearchDiagnosticInfo?|
|Split-PublicFolderMailbox.ps1||?Splits the given public folder mailbox based on the size of the folders?|
|StartDagServerMaintenance.ps1||?Calls Suspend-MailboxDatabaseCopy on the database copies.Pauses the node in Failover Clustering so that it can not become the Primary Active Manager. Suspends database activation on each mailbox database. Sets the DatabaseCopyAutoActivationPolicy to Blocked on the server. Moves databases and cluster group off of the designated server.* If there?s a failure in any of the above, the operations are undone, with the exception of successful database moves* Can be run remotely, but it requires the cluster administrative tools to be installed (RSAT-Clustering).?|
|StopDagServerMaintenance.ps1||?Resumes the things that were suspended by StartDagServerMaintenance,but does NOT move resources back to the server. Can be run remotely, but it requires the cluster administrative tools to be installed (RSAT-Clustering).?|
|StoreTSConstants.ps1||?This file contains global constants used by the Store Database Troubleshooters?|
|StoreTSLibrary.ps1||?A collection of Store Troubleshooter functions for use by other scripts.?|
|Troubleshoot-CI.ps1||?Performs troubleshooting on Content Index (CI) catalogs.?|
|Troubleshoot-DatabaseLatency.ps1||?Script is used by Microsoft System Center Operations Manager 2007 to detectand correct high latencies on a database. You can create a scheduled task by using Task Scheduler to run this script. Database latencies can be caused by a number of issues.?|
|Troubleshoot-DatabaseSpace.ps1||?Used by Microsoft System Center Operations Manager 2007 to detect andcorrect any excess log growth or Microsoft Exchange database (.edb) file growth that, if unchecked, may cause database downtime. By default, System Center Operations Manager 2007 runs the script every 15 minutes?|
|uninstall-AntispamAgents.ps1||Removes the AntiSpam agents installed by Install-AntispamAgents.ps1.|
|uninstall-BackEndAntispamAgents.ps1||Removes the AntiSpam agents installed by Install-BackEndAntispamAgents.ps1.|
|uninstall-FrontEndAntispamAgents.ps1||Removes the AntiSpam agents installed by Install-FrontEndAntispamAgents.ps1.B24|
|Update-MalwareFilteringServer.ps1||?The Update-MalwareFilteringServer command launches the engine and signatureupdate process for malware filtering.?|