前段时间迁移公司邮箱,涉及到新老邮箱账户信息对比。要把SamAccountName和Alias不相同的邮箱用户整理出来,做单独的对比。下面是命令&脚本:
-
命令:
Get-Mailbox -ResultSize Unlimited | where {$_.SamAccountName -ne $_.Alias}
- 脚本
# 加载 Exchange、AD 模块
Import-Module Activedirectory
Add-PSSnapin Microsoft.Exchange.Management.PowerShell.E2010 -ErrorAction SilentlyContinue
# 获取SamAccountName和Alias不相同的邮箱用户
$Mailbox = Get-Mailbox -ResultSize Unlimited | where {$_.SamAccountName -ne $_.Alias} | foreach {$_.SamAccountName}
# 准备输出集合
$GlobalExport = @()
# 循环处理邮箱用户
foreach ($user in $Mailbox)
{
$enableuser = Get-aduser -Identity $user | ?{$_.Enable -eq "True"}
$Mail = Get-Mailbox -ResultSize Unlimited $enableuser.SamAccountName
$Obj = New-Object PSObject
$Obj | Add-Member NoteProperty -Name "SamAccountName" -Value $Mail.SamAccountName
$Obj | Add-Member NoteProperty -Name "Alias" -Value $Mail.Alias
$Obj | Add-Member NoteProperty -Name "PrimarySmtpAddress" -Value $Mail.PrimarySmtpAddress
$Obj | Add-Member NoteProperty -Name "UserPrincipalName" -Value $Mail.UserPrincipalName
}
# 导出输出到CSV
$GlobalExport | Export-Csv f:\scripts\Mailbox.csv -Encoding UTF8
原文地址:http://blog.51cto.com/zhaodongwei/2066906
时间: 2024-10-17 22:56:09