A função Começ-DatabaseStatus
{
Param (
[Corda []] $Server
)
$Server | ForEach-Objeto {
# mostra alguns indicadores de progresso
Escrever-Anfitrião “que começa o laço para $_”
Escrever-Anfitrião “que executa a pergunta de WMI”
$wmiServer = Começ-Wmiobject Exchange_Server - `do _ de $ do computador
- #-ErrorAction raiz \ MicrosoftExchangeV2 SilentlyContinue do namespace
O Escrever-Anfitrião “que cria CDOEXM objeta”
$cdoexmIExchangeServer = Novo-Objeto - COM CDOEXM.ExchangeServer
$cdoexmIStorageGroup = Novo-Objeto - COM CDOEXM.StorageGroup
$cdoexmIMailboxStoreDB = Novo-Objeto - COM CDOEXM.MailboxStoreDB
Escrever-Anfitrião da “origem de dados do usuário da troca abertura”
$cdoexmIExchangeServer.Datasource.Open ($_)
Escrever-Anfitrião “que verific StorageGroups”
$cdoexmIExchangeServer.StorageGroups |
Onde-Objeto {ne 0 de $_.IndexOf (de “grupo do armazenamento CN=Recovery”) -} |
ForEach-Objeto {
Escrever-Anfitrião de “grupo $_ do armazenamento abertura”
$cdoexmIStorageGroup.DataSource.Open ((“LDAP: /” + $_))
$cdoexmIStorageGroup.MailboxStoreDBs | ForEach-Objeto {
Escrever-Anfitrião da “loja $MailStore abertura”
$cdoexmIMailboxStoreDB.DataSource.Open ((“LDAP: /” + $_))
$cdoexmIMailboxStoreDB | Nome do Selecionar-Objeto,
@ {e= do n='Status'; {se ($_.Status - eq 0) {“montado”} mais {“desmontado”}}}
}
}
}
}
}
Começ-DatabaseStatus “server1”, “server2” | ConvertTo-HTML
|