Arquivo de Exchange Server - Paulo Costa TI - Expert Solutions Microsoft | MCSE | MCSA | MCT https://paulocostati.com.br/exchange-server/ Fri, 25 Apr 2025 01:07:09 +0000 pt-BR hourly 1 https://wordpress.org/?v=6.8.1 https://i0.wp.com/paulocostati.com.br/wp-content/uploads/2024/09/Logotipo-empresa-de-programacao-sistemas-e-tecnologia.png?fit=32%2C32&ssl=1 Arquivo de Exchange Server - Paulo Costa TI - Expert Solutions Microsoft | MCSE | MCSA | MCT https://paulocostati.com.br/exchange-server/ 32 32 209994073 Como Gerar Relatório de Caixas com Mais de X GB no Exchange On-Premises com PowerShell https://paulocostati.com.br/exchange-server/como-gerar-relatorio-de-caixas-com-mais-de-x-gb-no-exchange-on-premises-com-powershell/?utm_source=rss&utm_medium=rss&utm_campaign=como-gerar-relatorio-de-caixas-com-mais-de-x-gb-no-exchange-on-premises-com-powershell Fri, 25 Apr 2025 01:07:06 +0000 https://paulocostati.com.br/?p=94 Script para listar caixas de correio Exchange acima de um tamanho específico
Este script PowerShell permite identificar caixas de correio que ultrapassam um limite de tamanho, mostrando dados como nome, tamanho, quantidade de itens, banco de dados e último login, e exporta para um CSV. Ideal para manter o controle de armazenamento no Exchange On-Premises.

O post Como Gerar Relatório de Caixas com Mais de X GB no Exchange On-Premises com PowerShell apareceu primeiro em Paulo Costa TI - Expert Solutions Microsoft | MCSE | MCSA | MCT.

]]>
Fala pessoal, tudo bem com vocês?

Se você cuida de um ambiente Exchange On-Premises, provavelmente já precisou descobrir quais caixas estão ocupando mais espaço que deveriam. Seja pra planejamento de armazenamento, migração ou só pra evitar aquele susto quando o banco enche — esse script aqui vai te salvar.

O que esse script vai fazer e automatizar teu trabalho rsr

  • Listar todas as caixas que passam de um determinado tamanho (em GB) – Você que vai definir isso
  • Mostrar nome, tamanho, quantidade de itens, banco e último login
  • Exportar tudo pra um .csv

E o que você precisa pra rodar ele?

Você pode usar direto no Shell do Exchange ou importar o modulo do Exchange no seu PowerShell…

Eu prefiro rodar direto no Shell do Exchange, mas isso dai é com você

Bora lá pro código

param(
    [int]$LimiteGB = 10
)

$limiteBytes = $LimiteGB * 1GB
$caminhoCSV = "C:\Temp\CaixasAcimaDe${LimiteGB}GB.csv"

$relatorio = Get-Mailbox -ResultSize Unlimited | ForEach-Object {
    $estatisticas = Get-MailboxStatistics $_.Identity
    if ($estatisticas.TotalItemSize.Value.ToBytes() -gt $limiteBytes) {
        [PSCustomObject]@{
            Nome            = $_.DisplayName
            Tamanho         = $estatisticas.TotalItemSize
            Itens           = $estatisticas.ItemCount
            BancoDeDados    = $estatisticas.Database
            UltimoLogin     = $estatisticas.LastLogonTime
        }
    }
}

$relatorio | Export-Csv -Path $caminhoCSV -NoTypeInformation -Encoding UTF8
Write-Host "Relatório gerado com sucesso: $caminhoCSV"

Qual a parte boa ai?

Você não precisa definir direto no script o tamanho da caixa.. Nesse script ai tem um parâmetro chamado LimiteGB, que é quando você for usar o script você pode definir o tamanho que você procura.

Outra observação, o CSV é gerado na pasta C:\Temp, você pode modificar o caminho na variável caminhoCSV

Um exemplo de como usar

Vamos supor que eu salvei o script com o nome Relatorio-CaixasGrandes.ps1

.\Relatorio-CaixasGrandes.ps1 -LimiteGB 5

Eu defini o parâmetro para 5GB, agora é só esperar a magica acontecer

Administrar Exchange sem automação é pedir pra sofrer haha. Esse tipo de script simples, mas direto, evita surpresas, economiza tempo e te dá dados reais pra tomar decisão.

Se curtiu, compartilha com seu time. E se quiser automatizar mais coisas no Exchange, fica de olho aqui no blog — tem muito mais vindo por aí.

O post Como Gerar Relatório de Caixas com Mais de X GB no Exchange On-Premises com PowerShell apareceu primeiro em Paulo Costa TI - Expert Solutions Microsoft | MCSE | MCSA | MCT.

]]>
94