Powershell을 사용하여 회의실 사서함 보고서를 얻는 방법

Powershell을 사용하여 회의실 사서함 보고서를 얻는 방법

이 명령을 실행해 보았습니다. 원활하게 실행되지만 도시 및 국가 필드가 채워지지 않습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

Get-Mailbox -RecipientTypeDetails RoomMailbox -ANR 'de-' | Select DisplayName,RecipientTypeDetails,alias,PrimarySmtpAddress,City,Country | export-csv C:\Output\room-de2.csv

여기에 이미지 설명을 입력하세요

답변1

Get-MailboxMicrosoft.Exchange.Data.Directory.Management.Mailbox 개체를 반환합니다. 그 내용을 살펴보면회원, 도시 및 국가가 없습니다.

둘 다 ADUser 클래스의 (추가) 멤버입니다. ActiveDirectory 모듈이 로드된 Powershell 세션에서 Get-Mailbox의 SamAccountName 속성을 Get-ADUser로 전달해야 합니다. 환경에 대한 자세한 내용이 없으면 이 작업을 한 번에 수행하는 방법을 조언할 수 없습니다. 그러나 다단계 방법이 있습니다.

SamAccountName을 파이프라인에 추가하면 SelectCSV를 사용하여 이 작업을 수행할 수 있습니다. 도메인 컨트롤러 실행에서

Import-Csv <path_to_CSV> | ForEach-Object {Get-ADUser $_.SamAccountName} | select City,Country | Export-Csv <new_CSV_path>

그런 다음 Get-ADUser 출력 CSV의 두 필드를 Get-Mailbox CSV에 추가할 수 있습니다.

$Exch = Get-Content <path_to_CSV>
$AD = Get-Content <new_CSV_path>
for ($i = 0; $i -lt $AD.Length; $i++) {$Exch[$i].insert(($Exch[$i].Length), ",$($AD[$i])") | Out-File <path_to_combined_csv> -Append}

관련 정보