痛いところは煙に巻く

製造業のしがない社内SEが日記代わりにいろいろ書く

Hello,World

Üben Sie es nur recht fleißig, so wird es schon gehen

【Microsoft365】Get-Mailboxでリソース情報を取得してCSVに一覧出力する

おはこんばんにちは、ビショップです。

最近Microsoft365をいじらされてます。
PowerShellを使わないと管理できないものもあり、非常に面倒です。

コマンドを作って、適宜実行できるようにps1にして保存しています。
備忘録的にコマンドの一部を記録しようと思います。

今日はGet-Mailboxコマンドを使って、メールボックスの情報を絞って出力する方法です。

# 実行ファイルのディレクトリ
$CurrentDir = Split-Path $MyInvocation.MyCommand.path
# 出力先ディレクトリ
$ExpDir = $CurrentDir + "\export_file\"
# 検索対象

# ディレクトリの存在チェック
If (!(Test-Path $ExpDir)) {
	# 存在しない場合、ディレクトリ作成
	New-Item $ExpDir -ItemType Directory
}

# メールボックス一覧
$GetMailBox = Get-Mailbox | Select Name,Alias,PrimarySmtpAddress,ResourceType,Office,AccountDisabled,ResourceCapacity,CustomAttribute1,CustomAttribute2,MailTip,DisplayName,RecipientType,RecipientTypeDetails,Identity,WhenMailboxCreated,WhenChanged,WhenCreated
$GetMailBox | Export-Csv -Encoding UTF8 -Path $ExpDir"Mailbox.csv"

Select句をつけて、必要そうな情報に絞って抽出してCSVに吐き出しています。
ps1ファイルの保存しているディレクトリ内にフォルダを作ってCSVを出力します。
Identityタグなどを使って絞り込んだりしてもいいですね。

会議室メールボックスのみを出力する場合は、Filterオプションをつけて絞り込むことで実現できます。

# メールボックス一覧 (会議室メールボックス)
$GetMailBox = Get-Mailbox -Filter "ResourceType -eq 'Room'" | Select Name,Alias,PrimarySmtpAddress,ResourceType,Office,AccountDisabled,ResourceCapacity,CustomAttribute1,CustomAttribute2,MailTip,DisplayName,RecipientType,RecipientTypeDetails,Identity,WhenMailboxCreated,WhenChanged,WhenCreated
$GetMailBox | Export-Csv -Encoding UTF8 -Path $ExpDir"Mailbox.csv"

他にも作った&作っているので、また紹介したいと思います。

スポンサーリンク