Exchange 管理シェルを使用してキューを管理する
製品: Exchange Server 2013
旧バージョンの Exchange と同様に、Microsoft Exchange Server 2013 では Exchange 管理シェルを使用して、キューとキュー内のメッセージに関する情報を表示し、キューとメッセージに対する管理アクションを実行できます。 Exchange 2013 では、キューはメールボックス サーバーとエッジ トランスポート サーバー上に存在します。 このトピックでは、これらのサーバーをトランスポート サーバーと呼びます。
シェルを使用して、トランスポート サーバー上のキューとキュー内のメッセージを表示および管理する場合、管理するキューまたはメッセージを特定する方法を把握しておくことが重要です。 一般に、トランスポート サーバーには配信されるキューとメッセージが大量に含まれています。 キューとメッセージの管理コマンドレットで使用できるフィルター処理パラメーターにより、表示または管理するキューあるいはメッセージを特定します。
なお、キューとキュー内メッセージの管理には、Exchange ツールボックスのキュー ビューアーも使用できます。 ただし、キューとメッセージの表示コマンドレットは、フィルター処理が可能なプロパティとフィルター オプションをキュー ビューアーよりも多くサポートしています。 キュー ビューアーの使用の詳細については、「キュー ビューアー」を参照してください。
キュー フィルター処理パラメーター
次の表に、キュー管理コマンドレットで使用可能なフィルター処理パラメーターを示します。
コマンドレット | フィルター処理パラメーター | Comments |
---|---|---|
Get-Queue |
Identity Filter Include Exclude |
Filter パラメーターと同じコマンドで Identity パラメーターを使用することはできません。 Include パラメーターと Exclude パラメーターは、同じコマンドの Filter パラメーターと共に使用できます。 |
Resume-Queue Retry-Queue Suspend-Queue |
Identity フィルター |
Identity パラメーターまたは Filter パラメーターを使用する必要がありますが、同じコマンドで両方を使用することはできません。 |
Get-QueueDigest |
Server Dag Site Forest フィルター |
Server、Dag、Site、または Forest パラメーターを使用する必要がありますが、同じコマンドでそれらのパラメーターを一緒に使用することはできません。 Filter パラメーターは、他のフィルター処理パラメーターと共に使用できます。 |
Server パラメーターは、すべてのキュー管理コマンドレットで使用できます。 Get-QueueDigest コマンドレットでは、Server パラメーターは、キューに関する概要情報を表示するサーバーまたはサーバーを指定するスコープ パラメーターです。 他のすべてのキュー管理コマンドレットでは、 Server パラメーターを使用して特定のサーバーに接続し、そのサーバーでキュー管理コマンドを実行します。 Server パラメーターは Filter パラメーターの有無にかかわらず使用できますが、Identity パラメーターで Server パラメーターを使用することはできません。 トランスポート サーバーのホスト名または FQDN は 、Server パラメーターと共に使用します。
キュー ID
キュー管理コマンドレットの Identity パラメーターは、特定のキューを識別します。 Identity パラメーターを使用する場合は、キューが既に一意に識別されているため、他のキュー フィルタリング パラメーターを指定することはできません。 Identity パラメーターは、基本的な構文<サーバー キューを使用します>\<>。
<サーバー> プレースホルダーは、Exchange サーバーのホスト名または FQDN です (例: mailbox01
または mailbox01.contoso.com
)。 Server 修飾子を省略すると<、ローカル サーバーが暗黙的に指定されます。>
Queue> プレースホルダーは<、次のいずれかの値を受け入れます。
永続的なキュー名: 永続的なキューには、すべてのメールボックスまたはエッジ トランスポート サーバーで一意の一貫性のある名前があります。 永続的なキューの名前は次のとおりです。
- 送信: このキューには、カテゴライザーによる処理を待機しているメッセージが含まれています。
- 到達不能: このキューには、ルーティングできないメッセージが含まれています。 そこにメッセージが置かれるまで、このキューは存在しません。
- 有害: このキューには、Exchange サーバーに有害であると判断されたメッセージが含まれています。 そこにメッセージが置かれるまで、このキューは存在しません。
配信キュー名: 配信キューの名前は、キューの NextHopDomain プロパティの値です。 たとえば、キューの名前には送信コネクタのアドレス スペース、Active Directory サイトの名前、または DAG の名前を指定できます。 詳細については、「 キュー」の「NextHopSolutionKey」セクションを参照してください。
キュー整数: 配信キューとシャドウ キューには、キュー データベースに一意の整数値が割り当てられます。 ただし、 Get-Queue コマンドレットを実行して、 Identity プロパティまたは QueueIdentity プロパティでキューの整数値を検索する必要があります。
シャドウ キュー名: シャドウ キューは QueueInteger> 構文<
Shadow\
を使用します
次の表は、キュー管理コマンドレットの Identity パラメーターで使用できる構文をまとめたものです。 すべての値で、 <サーバーはサーバー> のホスト名または FQDN です。
キュー ID の形式
Identity パラメーターの値 | 説明 |
---|---|
<Server>\<PersistentQueueName> または <PersistentQueueName> |
指定したサーバーまたはローカル サーバー上の永続的なキュー。 <PersistentQueueName> は、 Submission 、 Unreachable 、または Poison です。 |
<Server>\<NextHopDomain> または <NextHopDomain> |
指定したサーバーまたはローカル サーバー上の配信キュー。 <NextHopDomain> は、キュー内のメッセージのルーティング先または配信グループです。 詳細については、「 キュー」の「NextHopSolutionKey」セクションを参照してください。 |
<Server>\<QueueInteger> または <QueueInteger> |
指定したサーバーまたはローカル サーバー上の配信キュー。 <QueueInteger> は、 Get-Queue コマンドレットの Identity プロパティに表示されるキューの一意の整数値です。 |
<Server>\Shadow\<QueueInteger> または Shadow\<QueueInteger> |
指定したサーバーまたはローカル サーバー上のシャドウ キュー。 |
<Server>\* または * |
指定したサーバーまたはローカル サーバー上のすべてのキュー。 これらの値は、 Get-Queue コマンドレットでのみ使用できる点に注意してください。 |
キュー フィルター パラメーター
Filter パラメーターは、すべてのキュー管理コマンドレットで使用でき、キューのプロパティに基づいて表示または管理するキューを指定することが可能です。
Filter パラメーターは、フィルター条件を満たすキューにキュー操作を制限する比較演算子を持つ式を作成します。 論理演算子を -and
使用して、結果が一致する必要がある複数の条件を指定できます。
Filter パラメーターで使用できるキュー プロパティの完全な一覧については、「キュー」を参照してください。
Filter パラメーターで使用できる比較演算子の一覧については、このトピックの「キューまたはメッセージをフィルター処理するときに使用する比較演算子」セクションを参照してください。
Filter パラメーターを使用してキューを表示および管理する手順の例については、「キューの管理」を参照してください。
Include および Exclude パラメーター
Exchange 2013 には、コマンドレットで使用できる Include パラメーターと Exclude パラメーターがあります Get-Queue
。 これらのパラメーターを個別に、同時に、または Filter パラメーターと共に使用することで、ローカル サーバーまたは指定したトランスポート サーバー上のキューの結果を微調整できます。 たとえば、次のようなことが可能です。
- 空のキューを結果から除外します。
- 外部の宛先へのキューを結果から除外します。
- DeliveryType の特定の値があるキューを結果に含めます。
Include パラメーターと Exclude パラメーターでは、次のキュー プロパティを使用してキューをフィルター処理します。
値 | 説明 | シェルのコード例 |
---|---|---|
DeliveryType |
この値は、 DeliveryType プロパティに基づいてキューを含めるか、または除外します。 複数の値をコンマで区切って指定できます。 DeliveryType の有効な値については、「キュー」トピックの「NextHopSolutionKey」セクションで説明されています。 | この例では、ローカル サーバー上のすべての配信キューを返します。このとき、スマート ホスト ルーティング用に構成されたローカル サーバー上の送信コネクタが次ホップになります。 Get-Queue -Include SmartHostConnectorDelivery |
Empty |
この値は空のキューを含めるか、除外します。 空のキューには、MessageCount プロパティの値0 があります。 |
この例では、メッセージを含むローカル サーバー上のすべてのキューを返しますGet-Queue -Exclude Empty |
External |
この値には、NextHopCategory プロパティの値External を持つキューが含まれるか除外されます。 外部キューは、常に、 DeliveryType の値が次のいずれかになります。
詳細については、「 キュー」の「NextHopSolutionKey」セクションを参照してください。 |
この例では、ローカル サーバー上のすべての内部キューを返します。Get-Queue -Exclude External |
Internal |
この値には、NextHopCategory プロパティの値Internal を持つキューが含まれるか除外されます。 詳細については、「 キュー」の「NextHopSolutionKey」セクションを参照してください。 |
この例では、ローカル サーバー上のすべての内部キューを返します。 Get-Queue -Include Internal |
Filter パラメーターを使用して、Include パラメーターと Exclude パラメーターの機能を複製できることに注意してください。 たとえば、 コマンドは と同じ結果をGet-Queue -Filter "MessageCount -gt 0"
生成しますGet-Queue -Exclude Empty
。 ただし、 Include パラメーターと Exclude パラメーターの構文は、より簡単で覚えやすくなります。
Get-QueueDigest
Exchange 2013 には、 Get-QueueDigest という新しいキュー コマンドレットが追加されました。 このコマンドレットでは、単一のコマンドにより、Exchange 組織内の一部またはすべてのキューの情報を表示できます。 具体的には、 Get-QueueDigest コマンドレットは、サーバー、DAG、Active Directory サイト、または Active Directory フォレスト全体の場所に基づいて、キューに関する情報を表示できます。 境界ネットワーク内のサブスクライブ済みエッジ トランスポート サーバー上のキューは、結果に含まれないことに注意してください。 また、 Get-QueueDigest はエッジ トランスポート サーバーでは使用できますが、その場合、結果は エッジ トランスポート サーバー上のキューに制限されます。
注:
既定では、 Get-QueueDigest コマンドレットは、10 個以上のメッセージを含む配信キューを表示し、結果は 1 分から 2 分前です。 これらの既定値を変更する方法については、「 Get-QueueDigest の構成」を参照してください。
次の表に、 Get-QueueDigest コマンドレットで使用できるフィルターと並べ替えのパラメーターを示します。
パラメーター | 説明 |
---|---|
Dag、Server、または Site | これらのパラメーターは相互に排他的で、コマンドレットのスコープを設定します。 これらのパラメーターまたは フォレスト スイッチのいずれかを指定する必要があります。 一般にサーバー、DAG、または Active Directory サイトの名前を使用しますが、そのサーバー、DAG、またはサイトを一意で特定する値には任意のものを使用できます。 複数のサーバー、DAG、またはサイトをコンマで区切って指定できます。 |
Forest | Dag、Server、または Site パラメーターを使用していない場合は、この切り替えが必要です。 このスイッチを使用する場合は値を指定しません。 このスイッチを使用すると、Active Directory フォレスト内のすべての Exchange 2013 メールボックス サーバーからキューを取得します。 フォレスト スイッチを使用して、リモート Active Directory フォレスト内のキューを表示することはできません。 |
DetailsLevel | このパラメーターは、および の値None Normal をVerbose 受け取ります。 既定値は Normal です。 値 None を使用すると、結果の [詳細 ] 列からキュー名が省略されます。 |
フィルター | このパラメーターでは、キューのプロパティに基づいてキューをフィルター処理できます。 「キューのフィルター」で説明したフィルター処理可能なキュー プロパティは、すべて使用できます。 |
GroupBy | このパラメーターは、キューの結果をグループ化します。 次のプロパティのいずれかによって結果をグループ化することができます。
既定では、結果は で |
Resultsize | このパラメーターは、キューの結果を指定した値に制限します。 キューは、キュー内のメッセージの数に基づいて降順で並べ替え、 GroupBy パラメーターで指定された値でグループ化されます。 既定値は 1,000 です。 これは、既定では、コマンドが NextHopDomain によってグループ化された上位 1,000 個のキューを表示し、最大数のメッセージを含むキューから最小数のメッセージを含むキューの順に並べ替えることを意味します。 |
Timeout | パラメーターは、操作がタイムアウトするまでの秒数を指定します。既定値は 00:00:10 10 秒です。 |
この例では、Mailbox01、Mailbox02、および Mailbox03 という Exchange 2013 メールボックス サーバー上の空ではない外部キューをすべて返します。
Get-QueueDigest -Server Mailbox01,Mailbox02,Mailbox03 -Include External -Exclude Empty
メッセージ フィルター処理パラメーター
次の表に、メッセージ管理コマンドレットで使用可能なフィルター処理パラメーターを示します。
コマンドレット | フィルター処理パラメーター | Comments |
---|---|---|
Get-Message |
Identity Filter Queue |
すべてのフィルター パラメーターは相互に排他的で、同じコマンド内で同時に使用できます。 |
Remove-Message Resume-Message Suspend-Message |
Identity フィルター |
Identity パラメーターまたは Filter パラメーターを使用する必要がありますが、同じコマンドで両方を使用することはできません。 |
Export-Message | Identity | Identity パラメーターが必要です。 |
Server パラメーターは、Export-Message コマンドレットを除くすべてのメッセージ管理コマンドレットで使用できます。 Server パラメーターを使用して特定のサーバーに接続し、そのサーバーでメッセージ管理コマンドを実行します。 Server パラメーターは Filter パラメーターの有無にかかわらず使用できますが、Identity パラメーターで Server パラメーターを使用することはできません。 トランスポート サーバーのホスト名または FQDN は 、Server パラメーターと共に使用します。
メッセージ ID
メッセージ管理コマンドレットの Identity パラメーターは、1 つ以上のキューの特定のメッセージを識別します。 Identity パラメーターを使用する場合、メッセージが既に一意に識別されているため、他のメッセージ フィルター パラメーターを指定することはできません。 Identity パラメーターは、基本的な構文 <Server Queue MessageInteger を使用します>\<。>><\
<サーバー> プレースホルダーは、Exchange サーバーのホスト名または FQDN です (例: mailbox01
または mailbox01.contoso.com
)。 Server 修飾子を省略すると<、ローカル サーバーが暗黙的に指定されます。>
Queue> プレースホルダーは<、このトピックの「キュー ID」セクションで説明されているように、キューの ID を受け入れます。 たとえば、キュー データベースでは永続キュー名、 NextHopDomain 値、またはキューの一意の整数値を使用できます。
MessageInteger> プレースホルダーは<、最初にサーバー上のキュー データベースに入るときにメッセージに割り当てられる一意の整数値を表します。 メッセージが複数のキューを必要とする複数の受信者に送信される場合、キュー データベース内のすべてのキューにあるメッセージのコピーは、すべて同じ整数値を持つことになります。 ただし、 Get-Message コマンドレットを実行して、 Identity プロパティまたは MessageIdentity プロパティでメッセージの整数値を検索する必要があります。
次の表は、メッセージ管理コマンドレットの Identity パラメーターで使用できる構文をまとめたものです。 すべての値で、 <サーバーはサーバー> のホスト名または FQDN です。
メッセージ ID の形式
Identity パラメーターの値 | 説明 |
---|---|
<Server>\<Queue>\<MessageInteger> または <Queue>\<MessageInteger> |
指定したサーバーまたはローカル サーバー上の特定のキュー内のメッセージ。 <メッセージ整数> は、 Get-Message コマンドレットの Identity プロパティに表示されるメッセージの一意の整数値です。 <キュー> は、次のいずれかの値を表します。
|
<Server>\*\<MessageInteger> または*\<MessageInteger> <MessageInteger> |
指定したサーバーまたはローカル サーバー上のキュー データベース内にあるすべてのキューのすべてのメッセージ コピー。 |
メッセージ フィルター パラメーター
Get-Message、Remove-Message、Resume-Message、および Suspend-Message コマンドレットで Filter パラメーターを使用して、表示または管理するメッセージを、そのメッセージのプロパティに基づいて指定できます。
Filter パラメーターは、フィルター条件を満たすメッセージにメッセージ操作を制限する比較演算子を持つ式を作成します。 論理演算子を -and
使用して、結果が一致する必要がある複数の条件を指定できます。
Filter パラメーターで使用できるメッセージ プロパティの完全な一覧については、「キュー」を参照してください。
Filter パラメーターで使用できる比較演算子の一覧については、このトピックの「キューまたはメッセージをフィルター処理するときに使用する比較演算子」セクションを参照してください。
メッセージを表示および管理するために Filter パラメーターを使用するプロシージャの例については、「キューの 管理」を参照してください。
キュー パラメーター
Queue パラメーターは、Get-Message コマンドレットでのみ使用されます。 このパラメーターを使用すると、ワイルドカード文字 (*) を使用して、特定のキュー内のすべてのメッセージ、または複数のキューからすべてのメッセージを取得できます。 Queue パラメーターを使用する場合は、このトピックの「キュー ID」セクションで説明されているように、キュー ID 形式<のサーバー>\<キュー>を使用します。
キューまたはメッセージのフィルター処理に使用する比較演算子
Filter パラメーターを使用してキューまたはメッセージ フィルター式を作成するには、一致させるプロパティ値に対する比較演算子を含める必要があります。 次の表に、フィルター式で使用できる比較演算子と、各演算子の機能を示します。 すべての演算子は、比較する値の大文字小文字を区別しません。
比較演算子
オペレーター | 機能 | シェルのコード例 |
---|---|---|
-eq |
この演算子は、結果が式で指定されているプロパティ値に正確に一致する必要があることを指定するために使用されます。 | 状態が "再試行" になっているすべてのキューの一覧を表示するには、次の式を使用します。Get-Queue -Filter "Status -eq 'Retry'" 状態が "再試行" であるすべてのメッセージの一覧を表示するには、次の式を使用します。 Get-Message -Filter "Status -eq 'Retry'" |
-ne |
この演算子は、結果が式で指定されているプロパティ値に一致してはならないことを指定するために使用されます。 | 状態が "アクティブ" 以外のすべてのキューの一覧を表示するには、次の式を使用します。Get-Queue -Filter "Status -ne 'Active'" 状態が "アクティブ" 以外のすべてのメッセージの一覧を表示するには、次の式を使用します。 Get-Message -Filter "Status -ne 'Active'" |
-gt |
この演算子は、値が整数または日付/時間で表されるプロパティで使用されます。 このフィルターの結果には、指定したプロパティの値が、式で提供された値より大きいキューまたはメッセージのみが含まれます。 | 現在 1,000 を超えるメッセージが存在しているキューの一覧を表示するには、次の式を使用します。Get-Queue -Filter "MessageCount -gt 1000" 現在の再試行回数が 3 よりも大きいメッセージの一覧を表示するには、次の式を使用します。 Get-Message -Filter "RetryCount -gt 3" |
-ge |
この演算子は、値が整数または日付/時間で表されるプロパティで使用されます。 このフィルターの結果には、指定したプロパティの値が、式で提供された値より大きいか、等しいキューまたはメッセージのみが含まれます。 | 現在 1,000 以上のメッセージが存在しているキューの一覧を表示するには、次の式を使用します。Get-Queue -Filter "MessageCount -ge 1000" 現在の再試行回数が 3 以上のメッセージの一覧を表示するには、次の式を使用します。 Get-Message -Filter "RetryCount -ge 3" |
-lt |
この演算子は、値が整数または日付/時間で表されるプロパティで使用されます。 このフィルターの結果には、指定したプロパティの値が、式で提供された値より小さいキューまたはメッセージのみが含まれます。 | 現在存在しているメッセージが 1,000 より少ないキューの一覧を表示するには、次の式を使用します。Get-Queue -Filter "MessageCount -lt 1000" SCL が 6 よりも小さいメッセージの一覧を表示するには、次の式を使用します。 Get-Message -Filter "SCL -lt 6" |
-le |
この演算子は、値が整数または日付/時間で表されるプロパティで使用されます。 このフィルターの結果には、指定したプロパティの値が、式で提供された値より小さいか、等しいキューまたはメッセージのみが含まれます。 | 現在 1,000 以下のメッセージが存在しているキューの一覧を表示するには、次の式を使用します。Get-Queue -Filter "MessageCount -le 1000" SCL が 6 以下のメッセージの一覧を表示するには、次の式を使用します。 Get-Message -Filter "SCL -le 6" |
-like |
この演算子は、値が文字列で表されるプロパティで使用されます。 このフィルターの結果には、指定したプロパティの値に、式で提供されたテキスト文字列が含まれているキューまたはメッセージのみが含まれます。 テキスト文字列フィールドに適用される -like 式にはワイルドカード文字 (*) を含めることができますが、列挙型を持つフィールドには含めません。 | Contoso.com で終わる SMTP ドメインが送信先に指定されている配信キューの一覧を表示するには、次の式を使用します。Get-Queue -Filter "Identity -like '*contoso.com'" テキスト "payday loan" を件名に含むメッセージの一覧を表示するには、次の式を使用します。 Get-Messages -Filter "Subject -like '*payday loan*'" |
-and 比較演算子を使用して、複数の式を評価するフィルターを指定できます。 キューまたはメッセージが結果に含まれるには、フィルターのすべての条件を満たす必要があります。
この例では、Contoso.com で終わる SMTP ドメイン名を送信先に持つキューと、現在 500 を超えるメッセージが存在するキューの一覧が表示されます。
Get-Queue -Filter "Identity -like '*contoso.com*' -and MessageCount -gt 500"
この例では、5 よりも大きい SCL を持つ contoso.com ドメインの電子メール アドレスから送信されたメッセージの一覧が表示されます。
Get-Message -Filter "FromAddress -like '*Contoso.com*' -and SCL -gt 5"
高度なページ パラメーター
現在のメール フローによっては、キューおよびメッセージに対するクエリがオブジェクトの大きなセットを返すことがあります。 高度なページ パラメーターを使用すると、クエリ結果の取得および表示方法を制御することができます。
シェルを使用してキューおよびキュー内のメッセージを表示する場合、クエリは一度に 1 ページの情報を取得します。 高度なページ パラメーターは、結果セットのサイズを制御し、結果の並べ替えにも使用することができます。 高度なページ パラメーターはすべて省略可能であり、 Get-Queue コマンドレットと Get-Message コマンドレットで使用できるどのパラメーター セットとも組み合わせることができます。 高度なページ パラメーターを指定しない場合、クエリは ID を昇順に並べて結果を返します。
既定では、並べ替えの順序が指定されている場合、メッセージ ID プロパティが常に含まれ、昇順で並べ替えられます。 これは順序に関する既定の関係です。 並べ替えの順序に含めることができる他のプロパティは一意ではないため、メッセージ ID プロパティが含まれます。 並べ替えの順序にメッセージ ID プロパティを明示的に含めることで、結果でメッセージ ID が降順で並べ替えられるように指定することができます。
BookmarkIndex パラメーターと BookmarkObject パラメーターを使用して、並べ替えられた結果セット内の位置をマークできます。 結果の次のページが取得されるときにブックマーク オブジェクトが既に存在しなくなっていた場合は、順序に関する既定の関係により、結果セットはブックマークに最も近いオブジェクトから開始されます。 最も近いオブジェクトは、指定されている並べ替えの順序によって異なります。
次の表で、高度なページ パラメーターの説明を示します。
パラメーター | 説明 |
---|---|
BookmarkIndex | このパラメーターは、結果の表示が開始される結果セット内の位置を指定します。 このパラメーターの値は、全結果セットに対する 1 から始まるインデックスです。 値が 0 以下の場合は、結果の最初の完全なページが返されます。 値が に Int.MaxValue 設定されている場合は、結果の最後の完了ページが返されます。 |
BookmarkObject | このパラメーターは、結果の表示が開始される結果セット内のオブジェクトを指定します。 ブックマーク オブジェクトを指定すると、オブジェクトは検索の開始場所として使用されます。 SearchForward パラメーターの値に応じて、そのオブジェクトの前後の行が取得されます。 BookmarkObject パラメーターと BookmarkIndex パラメーターを 1 つのクエリで組み合わせることはできません。 |
IncludeBookmark | このパラメーターは、結果セットにブックマーク オブジェクトを含めるかどうかを指定します。 既定では、値は に $true 設定され、ブックマーク オブジェクトが含まれます。 限られた結果サイズのクエリを実行し、その結果セットの最後のアイテムを次のクエリ用のブックマークとして設定する場合があります。 この場合、オブジェクトが両方の結果セットに含まれないように 、IncludeBookmark を に $false 設定できます。 |
Resultsize | このパラメーターは、1 ページに表示する結果の数を指定します。 値を指定しない場合は、既定の結果サイズである 1,000 オブジェクトが使用されます。 Exchange は、結果セットを 250,000 に制限します。 |
ReturnPageInfo | このパラメーターは、隠しパラメーターです。 結果の合計数および現在のページの最初のオブジェクトのインデックスに関する情報を返します。 既定値は $false です。 |
SearchForward | このパラメーターは、結果セット内を順方向に検索するか逆方向に検索するかを指定します。 このパラメーターは、結果セットが返される順序には影響しません。 ブックマーク インデックスまたはオブジェクトを基準にして検索の方向を決定します。 ブックマーク インデックスまたはオブジェクトが指定されていない場合、 SearchForward パラメーターは、検索が結果セットの最初のオブジェクトと最後のオブジェクトのどちらから開始されるかを決定します。 このパラメーターの既定値は です $true 。 このパラメーターが に $true 設定され、ブックマークが指定されている場合、クエリはそのブックマークから前方に検索されます。 この構成を使用していて、ブックマークの先に結果が存在しない場合、クエリは結果の最後のページ全体を返します。 SearchForward パラメーターが に $false 設定されていて、ブックマークが指定されている場合、クエリはそのブックマークから後方に検索されます。 この構成を使用していて、ブックマークより先の結果が 1 ページに満たない場合、クエリは結果の最初のページ全体を返します。 |
SortOrder | このパラメーターは、結果セットの並べ替えの順序を制御するために使用されるメッセージ プロパティの配列を指定します。 並べ替えの順序のプロパティは、優先順位の高い順に指定します。 各プロパティはコンマで区切り、昇順で並べ替える場合はプラス記号 (+)、降順で並べ替える場合はマイナス (-) 記号を付加します。 このパラメーターを使用して明示的な並べ替えの順序が指定されていない場合は、クエリに一致するレコードが表示され、個別のオブジェクトの種類の Identity フィールドによって並べ替えられます。 並べ替えの順序が明示的に指定されていない場合、結果は常に ID によって昇順で並べ替えられます。 |
次のコード例は、クエリで高度なページング パラメーターを使用する方法を示しています。 この例では、コマンドは指定したサーバーに接続し、500 個のオブジェクトを含む結果セットを取得します。 結果は並べ替えられた順序で表示され、最初に送信者アドレスで昇順に表示され、次にメッセージ サイズの降順で表示されます。
Get-Message -Server mailbox01.contoso.com -ResultSize 500 -SortOrder +FromAddress,-Size
次に続くページを表示する場合は、結果セットで取得される最後のオブジェクトに対してブックマークを設定し、追加のクエリを実行します。 この手順を実行するには、シェルのスクリプト機能を使用する必要があります。
次の例は、スクリプトを使用して、結果の最初のページを取得し、ブックマーク オブジェクトを設定し、結果セットからブックマーク オブジェクトを除外し、指定されたサーバー上で次の 500 オブジェクトを取得しています。
シェルを開き、次のコマンドを入力して結果の最初のページを取得します。
$Results=Get-message -Server mailbox01.contoso.com -ResultSize 500 -SortOrder +FromAddress,-Size
ブックマーク オブジェクトを設定するには、次のコマンドを入力して、最初のページの最後の要素を変数に保存します。
$temp=$results[$results.length-1]
指定されたサーバー上で次の 500 オブジェクトを取得し、ブックマーク オブジェクトを除外するには、次のコマンドを入力します。
Get-message -Server mailbox01.contoso.com -BookmarkObject:$temp -IncludeBookmark $False -ResultSize 500 -SortOrder +FromAddress,-Size