RedPlug's Tory

redplug입니다.


Exchange 사서함 용량 추출 스크립트입니다.

실제로 돌리면 파일이 2개가 떨어지게 됩니다.

1번파일은 Guid, displayname, Database, ItemCount, TotalSize

2번파일은 Guid, Displayname, Account, Database, WindowsEmailAddress


양쪽 둘 다 값이 필요하신 경우 Guid값 기준으로 csv파일을 합쳐주시면 됩니다.


 $DBS = "DB1", "DB2"

foreach ($DB in $DBS)

{

$today = (Get-Date).ToString("yyyyMMdd")

$Exportcsv = $today + "_" + $DB

Get-MailboxStatistics -Database $DB | Select MailboxGuid,DisplayName, database, ItemCount, @{name="TotalItemSize (MB)"; expression={[math]::Round(($_.TotalItemSize.ToString().Split("(")[1].Split(" ")[0].Replace(",","")/1MB),2)}} | Sort-Object TotalItemSize -Descending | Export-CSV c:\work\csv\$Exportcsv.csv -Encoding UTF8 -NoTypeInformation


get-mailbox -Database $DB -resultsize unlimited | Select ExchangeGuid,DisplayName,Name,Database,windowsemailaddress | Sort-Object TotalItemSize -Descending | Export-CSV c:\work\csv\$Exportcsv"_2".csv -Encoding UTF8 -NoTypeInformation

}




해당 두 파일 합치기 위한 Join-Object 확인중


.\join-object.ps1


$L = Import-csv -Path D:\Work\join-object\20181218_DB-08A.csv


$R = Import-csv -Path D:\Work\join-object\20181218_DB-08A_2.csv


Join-Object -Left $L -Right $R -LeftJoinProperty MailboxGuid -RightJoinProperty ExchangeGuid -Type AllInBoth -Prefix r_ | export-csv D:\work\join-object\test.csv -Encoding UTF8 -NoTypeInformation

 

출처 : http://ramblingcookiemonster.github.io/Join-Object/

join-object.zip