zoukankan      html  css  js  c++  java
  • Powershell Get Domain Mailbox的几种方法

    一、Disconnected Mailboxes

    1、Finding Disconnected Mailboxes

    The first function is called Get-DisconnectedMailbox and the name is pretty much self explanitory. This function will give you a list of all disconnected mailboxes on each of your mailbox servers. Take a look at the following code:

    function Get-DisconnectedMailbox {
        [CmdletBinding()]
        param(
            [Parameter(Position=0, Mandatory=$false)]
            [System.String]
            $Name = '*'
        )
        
        $mailboxes = Get-MailboxServer
        $mailboxes | %{
            $disconn = Get-Mailboxstatistics -Server $_.name | ?{ $_.DisconnectDate -ne $null }
            $disconn | ?{$_.displayname -like $Name} | 
                Select DisplayName,
                @{n="StoreMailboxIdentity";e={$_.MailboxGuid}},
                Database
        }
    }
    View Code

    Note: If you’ve recently deleted a mailbox, but it’s not showing up when running Get-DisconnectedMailbox, you may need to force Exchange to recognize this by running the Clean-MailboxDatabase cmdlet.


    2、Purging Disconnected Mailboxes

    You purge mailboxes using the Remove-Mailbox cmdlet, specifying the StoreMailboxIdentity and Database for the disconnected mailbox in question. For a good example of this, check out Nitin Gupta’s post on removing disconnected mailboxes.

    In an effort to simplify the purging of disconnected mailboxes, I wrote the Remove-DisconnectedMailbox function that is designed to work with Get-DisconnectedMailbox. Here is the code:

    function Remove-DisconnectedMailbox {
        [CmdletBinding(SupportsShouldProcess=$true)]
        param(
            [Parameter(Position=0, ValueFromPipelineByPropertyName=$true, Mandatory=$true)]
            [System.String]
            $StoreMailboxIdentity,
            [Parameter(Position=1, ValueFromPipelineByPropertyName=$true, Mandatory=$true)]
            [System.String]
            $Database
            )
        
        process {
            Remove-Mailbox @PSBoundParameters
        }
    }
    View Code
    Get-DisconnectedMailbox “Bill Jones” | Remove-DisconnectedMailbox -Confirm:$false
    Get-DisconnectedMailbox “Bradford Boyer” | %{Connect-Mailbox -Identity $_.StoreMailboxIdentity -Database ‘DB1′ -User ‘contosoboyer’ -Alias ‘bboyer’}

    参考至博文<http://www.mikepfeiffer.net/2010/06/managing-disconnected-exchange-mailboxes-with-powershell/>


    二、

  • 相关阅读:
    针对web高并发量的处理
    外边距合并,外边距折叠
    cookie 和session 的区别:
    ng-if ng-show ng-hide 的区别
    JavaScript中的arguments,callee,caller
    git常见命令
    jQuery中.bind() .live() .delegate() .on()的区别
    为什么要使用sass
    js兼容性记录
    poj1004
  • 原文地址:https://www.cnblogs.com/thescentedpath/p/psexmailbox.html
Copyright © 2011-2022 走看看