Exchange 2013 メールボックスの連絡先内の 1 つのフォルダーを削除する

Exchange 2013 メールボックスの連絡先内の 1 つのフォルダーを削除する

携帯電話の連絡先リストが、空の PST ファイル内の「Cell Phone List」というサブフォルダに保存されています。月に 1 回、テキスト ファイルからメールボックスのリストを取得し、会社名を含むすべての連絡先を削除し、ゴミ箱を削除して、次のようにそれらを再度追加するスクリプトが実行されます。

foreach ($i in (Import-Csv "\\File\Share\ContactSync.txt")) { Search-Mailbox -Identity $i.alias -SearchQuery 'kind:contacts AND subject:" - CompanyName"' -DeleteContent -Force }

foreach ($i in (Import-Csv "\\File\Share\ContactSync.txt")) { Search-Mailbox -Identity $i.alias -SearchQuery 'kind:contacts' -SearchDumpsterOnly -DeleteContent -Force }

foreach ($i in (Import-Csv "\\File\Share\ContactSync.txt")) { New-MailboxImportRequest -Mailbox $i.alias -FilePath "\\File\Share\PhoneContacts.pst" -TargetRootFolder "#Contacts#" }

これは、98% の確率でうまく機能し、それらの人々の携帯電話 (ActiveSync) は変更を認識し、再同期します。ただし、最後の 2% では、携帯電話は連絡先が削除されたことを認識しますが、置き換えた連絡先は同期しません。これを修正するには、連絡先から「携帯電話リスト」サブフォルダを手動で削除し、再度インポートすると、機能します。

したがって、おそらく ActiveSync 内の何かが変更を認識せず同期しないが、サブフォルダーの削除を認識し、サブフォルダーが戻ったときに適切に同期すると考えられます。そうは言っても、連絡先フォルダーから簡単な 1 行のコマンドを使用してサブフォルダーを削除する方法がわかりません。そのような方法はあるのでしょうか? 実際の連絡先とメール アイテムに Search-Mailbox を使用する例はたくさん見つかりましたが、特定のフォルダーを削除する例はありませんでした。

答え1

コマンドレットSearch-Mailbox特定のフォルダーを削除するためのパラメーターがない場合は、コマンドレットに関する次のリンクを参照してください。検索-メールボックス

さらに、Exchange 2013 PowerShell で次のコマンドを実行しようとしましたが、特定のフォルダーを削除するコマンドは見つかりませんでした。

Get-Command | where{$_.Name -like "*Remove*" -and $_.Name -like "*Folder*"} | ft Name -AutoSize

Get-Command | where{$_.Name -like "*Folder*"} | ft Name -AutoSize

ここに画像の説明を入力してください

ここに画像の説明を入力してください

調査の結果、同様のスレッドを見つけました:Powershell を使用して Exchange 2016 のすべてのメールボックスからフォルダーを削除する、 としてヴァシル・L・ミチェフ/ケブ・ドラモンド他の人はこう答えました。電子情報技術特定のフォルダを削除します。

上記の情報がお役に立てば幸いです。

関連情報