次の方法で共有


about_ActivityCommonParameters

概要

Windows PowerShell ワークフローがアクティビティに追加するパラメーターについて説明します。

詳細説明

Windows PowerShell ワークフローは、 PSActivity 基底クラスから派生したアクティビティにアクティビティ共通パラメーターを追加します。 このカテゴリには、 InlineScript アクティビティと、 Get-ProcessGet-WinEventなどのアクティビティとして実装される Windows PowerShell コマンドレットが含まれます。

アクティビティの共通パラメーターは、 Suspend-Workflow および Checkpoint-Workflow アクティビティでは無効であり、Windows PowerShell ワークフローが InlineScript スクリプト ブロックまたは同様のアクティビティで自動的に実行するコマンドレットまたは式には追加されません。 アクティビティ共通パラメーターは InlineScript アクティビティで使用できますが、 InlineScript スクリプト ブロックのコマンドでは使用できません。

アクティビティ共通パラメーターのいくつかは、ワークフロー共通パラメーターまたは Windows PowerShell 共通パラメーターでもあります。 その他のアクティビティ共通パラメーターは、アクティビティに固有です。

ワークフローの共通パラメーターの詳細については、 about_WorkflowCommonParametersを参照してください。 Windows PowerShell の共通パラメーターの詳細については、「 about_CommonParameters」を参照してください。

アクティビティの共通パラメーターの一覧

AppendOutput                      PSDebug
Debug                             PSDisableSerialization
DisplayName                       PSDisableSerializationPreference
ErrorAction                       PSError
Input                             PSPersist
MergeErrorToOutput                PSPort
PSActionRetryCount                PSProgress
PSActionRetryIntervalSec          PSProgressMessage
PSActionRunningTimeoutSec         PSRemotingBehavior
PSApplicationName                 PSRequiredModules
PSAuthentication                  PSSessionOption
PSCertificateThumbprint           PSUseSSL
PSComputerName                    PSVerbose
PSConfigurationName               PSWarning
PSConnectionRetryCount            Result
PSConnectionRetryIntervalSec      UseDefaultInput
PSConnectionURI                   Verbose
PSCredential                      WarningAction

パラメーターの説明

このセクションでは、アクティビティの共通パラメーターについて説明します。

AppendOutput <Boolean>

$True値を指定すると、アクティビティの出力が変数の値に追加されます。 $Falseの値は無効です。 既定では、変数に値を代入することで変数の値が置き換わります。

たとえば、次のコマンドは、 $x 変数のサービス オブジェクトにプロセス オブジェクトを追加します。

Workflow Test-Workflow
{
    $x = Get-Service
    $x = Get-Process -AppendOutput $true
}

このパラメーターは、XAML ベースのワークフロー用に設計されています。 スクリプト ワークフローでは、次の例に示すように、 += 代入演算子を使用して変数の値に出力を追加することもできます。

Workflow Test-Workflow
{
    $x = Get-Service
    $x += Get-Process
}

デバッグ <SwitchParameter>

コマンドによって実行された操作に関するプログラマ レベルの詳細を表示します。 Debug パラメーターは、現在のコマンドの$DebugPreference変数の値をオーバーライドします。 このパラメーターは、コマンドがデバッグ メッセージを生成する場合にのみ機能します。 このパラメーターは、Windows PowerShell の共通パラメーターでもあります。

DisplayName <String>

アクティビティのフレンドリ名を指定します。 DisplayName値は、ワークフローの実行中に進行状況バーに表示され、ワークフロー ジョブの Progress プロパティの値に表示されます。 コマンドに PSProgressMessage パラメーターも含まれている場合、進行状況バーの内容は <DisplayName>:<PSProgressMessage> 形式で表示されます。

ErrorAction <ActionPreference>

コマンドから終了しないエラーに対するアクティビティの応答方法を決定します。 終了エラーには影響しません。 このパラメーターは、コマンドが終了しないエラー ( Write-Error コマンドレットのエラーなど) を生成する場合にのみ機能します。 ErrorAction パラメーターは、現在のコマンドの$ErrorActionPreference変数の値をオーバーライドします。 このパラメーターは、Windows PowerShell の共通パラメーターでもあります。

有効な値:

  • Continue. エラー メッセージを表示し、コマンドの実行を続行します。 既定値は Continue です。

  • Ignore. エラー メッセージを抑制し、コマンドの実行を続行します。 SilentlyContinueとは異なり、Ignore$Error自動変数にエラー メッセージを追加しません。 Ignore値は、Windows PowerShell 3.0 で導入されています。

  • Inquire. エラー メッセージを表示し、実行を続行する前に確認を求められます。 この値はほとんど使用しません。

  • Suspend. ワークフロー ジョブを自動的に中断して、詳細な調査を可能にします。 調査後、ワークフローを再開できます。

  • SilentlyContinue. エラー メッセージを抑制し、コマンドの実行を続行します。

  • Stop. エラー メッセージを表示し、コマンドの実行を停止します。

Input <Object[]>

オブジェクトのコレクションをアクティビティに送信します。 これは、オブジェクトを 1 つずつアクティビティにパイプ処理することに代わるものです。

MergeErrorToOutput <Boolean>

$True値を指定すると、出力ストリームにエラーが追加されます。 $Falseの値は無効です。 このパラメーターを Parallel キーワードと ForEach -Parallel キーワードと共に使用して、1 つのコレクション内の複数の並列コマンドからエラーと出力を収集します。

PSActionRetryCount <Int32>

最初の試行が失敗した場合は、アクティビティの実行を繰り返し試行します。 既定値の 0は再試行されません。

PSActionRetryIntervalSec <Int32>

アクションの再試行間隔を秒単位で決定します。 既定値の 0は、アクションを直ちに再試行します。 このパラメーターは、コマンドで PSActionRetryCount パラメーターが使用されている場合にのみ有効です。

PSActionRunningTimeoutSec <Int32>

各ターゲット コンピューターでアクティビティを実行できる期間を指定します。 タイムアウトが切れる前にアクティビティが完了しない場合、Windows PowerShell ワークフローは終了エラーを生成し、影響を受けるターゲット コンピューターでのワークフローの処理を停止します。

PSAllowRedirection <Boolean>

$True値を指定すると、ターゲット コンピューターへの接続をリダイレクトできます。 $Falseの値は無効です。 このアクティビティ共通パラメーターは、ワークフロー共通パラメーターでもあります。

PSConnectionURI パラメーターを使用すると、リモート宛先は別の URI にリダイレクトする命令を返すことができます。 既定では、Windows PowerShell は接続をリダイレクトしませんが、 PSAllowRedirection パラメーターを $True の値と共に使用して、ターゲット コンピューターへの接続のリダイレクトを許可できます。

また、$PSSessionOption設定変数の MaximumConnectionRedirectionCount プロパティ、またはセッションを作成するコマンドレットの SessionOption パラメーターの値の MaximumConnectionRedirectionCount プロパティを設定して、接続がリダイレクトされる回数を制限することもできます。 既定値は 5 です。

PSApplicationName <String>

ターゲット コンピューターへの接続に使用される接続 URI のアプリケーション名セグメントを指定します。 コマンドで ConnectionURI パラメーターを使用しない場合は、このパラメーターを使用してアプリケーション名を指定します。 このアクティビティ共通パラメーターは、ワークフロー共通パラメーターでもあります。

既定値は、ターゲット コンピューターの $PSSessionApplicationName 基本設定変数の値です。 このユーザー設定変数が定義されていない場合、既定値は WSMAN です。 この値はほとんどの用途に適しています。 詳細については、「 about_Preference_Variables」を参照してください。

WinRM サービスは、アプリケーション名を使用して、接続要求を処理するリスナーを選択します。 このパラメーターの値は、リモート コンピューター上のリスナーの URLPrefix プロパティの値と一致する必要があります。

PSAuthentication <AuthenticationMechanism>

ターゲット コンピューターに接続するときにユーザーの資格情報を認証するために使用されるメカニズムを指定します。 有効な値は、DefaultBasicCredSSPDigestKerberosNegotiateNegotiateWithImplicitCredentialです。 既定値は Default です。 このアクティビティ共通パラメーターは、ワークフロー共通パラメーターでもあります。

このパラメーターの値については、PowerShell SDK の System.Management.Automation.Runspaces.AuthenticationMechanism 列挙型の説明を参照してください。

警告

ユーザーの資格情報が認証されるリモート コンピューターにユーザーの資格情報が渡される資格情報セキュリティ サービス プロバイダー (CredSSP) 認証は、リモート ネットワーク共有へのアクセスなど、複数のリソースで認証を必要とするコマンド用に設計されています。 このメカニズムを使用すると、リモート操作のセキュリティ リスクが高まります。 リモート コンピューターのセキュリティが低下している場合は、そのリモート コンピューターに渡される資格情報を使用してネットワーク セッションが制御される場合があります。

PSCertificateThumbprint <String>

この処理を実行するアクセス許可を持つユーザー アカウントのデジタル公開キー証明書 (X509) を指定します。 証明書の拇印を入力します。 このアクティビティ共通パラメーターは、ワークフロー共通パラメーターでもあります。

証明書は、クライアント証明書ベースの認証で使用されます。 これらの証明書は、ローカル ユーザー アカウントにしかマップできません。ドメイン アカウントでは機能しません。

証明書を取得するには、Windows PowerShell Cert: ドライブで Get-Item または Get-ChildItem コマンドレットを使用します。

PSComputerName <String[]>

アクティビティを実行するターゲット コンピューターを指定します。 既定値はローカル コンピューターです。 このアクティビティ共通パラメーターは、ワークフロー共通パラメーターでもあります。

1 台または複数のコンピューターの NETBIOS 名、IP アドレス、または完全修飾ドメイン名をコンマ区切りリストで入力します。 ローカル コンピューターを指定するには、コンピューター名、 localhost、またはドット (.) を入力します。

PSComputerName パラメーターの値にローカル コンピューターを含めるには、Run as administrator オプションを指定して Windows PowerShell を開きます。

このパラメーターをコマンドから省略するか、値が $null または空の文字列である場合、ワークフロー ターゲットはローカル コンピューターであり、Windows PowerShell リモート処理はコマンドの実行に使用されません。

ComputerName パラメーターの値に IP アドレスを使用するには、コマンドに PSCredential パラメーターを含める必要があります。 また、HTTPS トランスポート用にコンピューターを構成するか、リモート コンピューターの IP アドレスをローカル コンピューター上の WinRM TrustedHosts 一覧に含める必要があります。 TrustedHosts リストにコンピューター名を追加する手順については、 about_Remote_Troubleshootingの「信頼できるホストの一覧にコンピューターを追加する方法」を参照してください。

PSConfigurationName <String>

ターゲット コンピューターでセッションを作成するために使用するセッション構成を指定します。 (ワークフローを実行しているコンピューターではなく) ターゲット コンピューターのセッション構成の名前を入力します。 既定値は Microsoft.PowerShell.Workflow です。 このアクティビティ共通パラメーターは、ワークフロー共通パラメーターでもあります。

PSConnectionRetryCount <UInt>

最初の接続試行が失敗した場合に、各ターゲット コンピューターへの接続試行の最大数を指定します。 1 ~ 4,294,967,295 (UInt.MaxValue) の数値を入力します。 既定値の 0 (0) は、再試行を表しません。 このアクティビティ共通パラメーターは、ワークフロー共通パラメーターでもあります。

PSConnectionRetryIntervalSec <UInt>

接続再試行の間隔を秒単位で指定します。 既定値は 0 (0) です。 このパラメーターは、 PSConnectionRetryCount の値が 1 以上の場合にのみ有効です。 このアクティビティ共通パラメーターは、ワークフロー共通パラメーターでもあります。

PSConnectionURI <System.Uri>

ターゲット コンピューター上のアクティビティの接続エンドポイントを定義する URI (Uniform Resource Identifier) を指定します。 URI は完全修飾名にする必要があります。 このアクティビティ共通パラメーターは、ワークフロー共通パラメーターでもあります。

この文字列の形式は次のとおりです。

<Transport>://<ComputerName>:<Port>/<ApplicationName>

既定値は http://localhost:5985/WSMAN です。

PSConnectionURI を指定しない場合は、PSUseSSLPSComputerNamePSPort、および PSApplicationName パラメーターを使用して、PSConnectionURI 値を指定できます。

URI のトランスポート セグメントの有効な値は、 HTTP され、 HTTPS。 トランスポート セグメントで接続 URI を指定したが、ポートを指定しない場合、セッションは標準ポート (HTTP の場合は 80 、HTTPS の場合は 443 ) で作成されます。 Windows PowerShell リモート処理に既定のポートを使用するには、HTTP のポート 5985 または HTTPS の 5986 を指定します。

PSCredential <PSCredential>

ターゲット コンピューターでアクティビティを実行するアクセス許可を持つユーザー アカウントを指定します。 既定値は現在のユーザーです。 このパラメーターは、 PSComputerName パラメーターがコマンドに含まれている場合にのみ有効です。 このアクティビティ共通パラメーターは、ワークフロー共通パラメーターでもあります。

User01Domain01\User01などのユーザー名を入力するか、PSCredential オブジェクト (Get-Credential コマンドレットが返すオブジェクトなど) を含む変数を入力します。 ユーザー名のみを入力すると、パスワードの入力を求められます。

PSDebug <PSDataCollection[DebugRecord]>

デバッグ メッセージをコンソールまたはワークフロー ジョブの Debug プロパティの値に書き込む代わりに、アクティビティから指定したデバッグ レコード コレクションにデバッグ メッセージを追加します。 複数のアクティビティからのデバッグ メッセージを、同じデバッグ レコード コレクション オブジェクトに追加できます。

このアクティビティ共通パラメーターを使用するには、New-Object コマンドレットを使用して、DebugRecord 型のPSDataCollection オブジェクトを作成しオブジェクトを変数に保存します。 次に、次の例に示すように、1 つ以上のアクティビティの PSDebug パラメーターの値として変数を使用します。

Workflow Test-Workflow
{
    $debugCollection = New-Object -Type `
    System.Management.Automation.PSDataCollection[System.Management.Automation.DebugRecord]
    InlineScript {\Server01\Share01\Get-AssetData.ps1} -PSDebug $debugCollection -Debug $True
    InlineScript {\Server01\Share01\Set-AssetData.ps1} -PSDebug $debugCollection -Debug $True
    if ($debugCollection -like "Missing") { ...}
}

PSDisableSerialization <Boolean>

"ライブ" (シリアル化されていない) オブジェクトをワークフローに返すようにアクティビティに指示します。 結果として得ることができるオブジェクトには、メソッドと共にプロパティがありますが、チェックポイントの取得時に保存することはできません。

PSDisableSerializationPreference <Boolean>

アクティビティだけでなく、ワークフロー全体に PSDisableSerialization パラメーターに相当するものを適用します。 オブジェクトをシリアル化しないワークフローは再開または永続化できないため、通常、このパラメーターの追加はお勧めしません。

有効な値:

  • (既定値)省略し、 PSDisableSerialization パラメーターもアクティビティに追加していない場合は、オブジェクトがシリアル化されます。

  • $True. ワークフロー内のすべてのアクティビティに、"ライブ" (シリアル化されていない) オブジェクトを返すよう指示します。 結果として得ることができるオブジェクトには、メソッドと共にプロパティがありますが、チェックポイントの取得時に保存することはできません。

  • $False. ワークフロー オブジェクトがシリアル化されます。

PSError <PSDataCollection[ErrorRecord]>

エラー メッセージをコンソールまたはワークフロー ジョブの Error プロパティの値に書き込むのではなく、指定したエラー レコード コレクションにアクティビティからエラー メッセージを追加します。 複数のアクティビティからのエラー メッセージを、同じエラー レコード コレクション オブジェクトに追加できます。

このアクティビティ共通パラメーターを使用するには、New-Object コマンドレットを使用して、ErrorRecord 型のPSDataCollection オブジェクトを作成しオブジェクトを変数に保存します。 次に、次の例に示すように、1 つ以上のアクティビティの PSError パラメーターの値として変数を使用します。

Workflow Test-Workflow
{
   $typeName = "System.Management.Automation.PSDataCollection"
   $typeName += '[System.Management.Automation.ErrorRecord]'
   $ec = New-Object $typeName
   InlineScript {\Server01\Share01\Get-AssetData.ps1} -PSError $ec
   InlineScript {\Server01\Share01\Set-AssetData.ps1} -PSError $ec
   if ($ec.Count -gt 2)
   {
      # Do Some Work.
   }
}

PSPersist <Boolean>

アクティビティの後にチェックポイントを取得します。 このチェックポイントは、ワークフローで指定されているチェックポイントに加えて行います。 このアクティビティ共通パラメーターは、ワークフロー共通パラメーターでもあります。

"チェックポイント" または "永続化ポイント" は、ワークフローの実行中にキャプチャされ、ディスク上の永続化ストアに保存されるワークフローの状態とデータのスナップショットです。 Windows PowerShell ワークフローでは、保存されたデータを使用して、ワークフローを再起動するのではなく、最後の永続化ポイントから中断または中断されたワークフローを再開します。

有効な値:

  • (既定値)このパラメーターを省略すると、チェックポイントは追加されません。 チェックポイントは、ワークフローの設定に基づいて取得されます。

  • $True. アクティビティの完了後に、チェックポイントを取得します。 このチェックポイントは、ワークフローで指定されているチェックポイントに加えて行います。

  • $False. チェックポイントは追加されません。 チェックポイントは、ワークフローで指定されている場合にのみ取得されます。

PSPort <Int32>

ターゲット コンピューター上のネットワーク ポートを指定します。 既定のポートは、 5985 (HTTP の WinRM ポート) と 59'86 (HTTPS の WinRM ポート) です。 このアクティビティ共通パラメーターは、ワークフロー共通パラメーターでもあります。

必要な場合を除き、 PSPort パラメーターは使用しないでください。 コマンドで設定されたポートは、コマンドが実行されるすべてのコンピューターまたはセッションに適用されます。 代替ポートの設定によっては、コマンドがすべてのコンピューターで実行されない場合があります。 代替ポートを使用する前に、そのポートでリッスンするようにリモート コンピューター上の WinRM リスナーを構成する必要があります。

PSProgress <PSDataCollection[ProgressRecord]>

進行状況メッセージをコンソールまたはワークフロー ジョブの Progress プロパティの値に書き込む代わりに、アクティビティから指定した進行状況レコード コレクションに進行状況メッセージを追加します。 複数のアクティビティからの進行状況メッセージを、同じ進行状況レコード コレクション オブジェクトに追加できます。

PSProgressMessage <String>

アクティビティのわかりやすい説明を指定します。 PSProgressMessage値は、ワークフローの実行中に進行状況バーに表示されます。 コマンドに DisplayName も含まれている場合、進行状況バーの内容は <DisplayName>:<PSProgressMessage> 形式で表示されます。

このパラメーターは、 ForEach -Parallel スクリプト ブロック内のアクティビティを識別する場合に特に便利です。 このメッセージがない場合、すべての並列分岐内のアクティビティは、同じ名前で識別されます。

PSRemotingBehavior <RemotingBehavior>

ターゲット コンピューターでアクティビティを実行するときにリモート処理を管理する方法を指定します。 PowerShell が既定です。

有効な値は次の通りです。

  • None: アクティビティはリモート コンピューターでは実行されません。

  • PowerShell: Windows PowerShell リモート処理は、ターゲット コンピューターでアクティビティを実行するために使用されます。

  • Custom: アクティビティは、独自の種類のリモート処理をサポートします。 この値は、アクティビティとして実装されているコマンドレットが RemotingCapability 属性の値を SupportedByCommand に設定し、コマンドに ComputerName パラメーターが含まれている場合に有効です。

PSRequiredModules <String[]>

コマンドを実行する前に、指定したモジュールをインポートします。 モジュール名を入力します。 モジュールはターゲット コンピューターにインストールする必要があります。

PSModulePath 環境変数で指定されたパスにインストールされているモジュールは、モジュール内のコマンドを最初に使用すると自動的にインポートされます。 このパラメーターを使用して、 PSModulePath の場所にないモジュールをインポートします。

ワークフロー内の各アクティビティは独自のセッションで実行されるため、 Import-Module コマンドはモジュールを実行するセッションにのみインポートします。 その他のアクティビティが実行されるセッションにはモジュールはインポートされません。

PSSessionOption <PSSessionOption>

セッションの詳細オプションをターゲット コンピューターに設定します。 New-PSSessionOption コマンドレットを使用して作成するオブジェクトなど、PSSessionOption オブジェクトを入力します。 このアクティビティ共通パラメーターは、ワークフロー共通パラメーターでもあります。

セッション・オプションのデフォルト値は、 $PSSessionOption ユーザー設定変数の値 (設定されている場合) によって決まります。 それ以外の場合、セッションはセッション構成で指定された値を使用します。

既定値を含むセッション オプションの説明については、New-PSSessionOption コマンドレット New-PSSessionOption のヘルプ トピックを参照してください。

$PSSessionOption基本設定変数の詳細については、about_Preference_Variablesを参照してください。

PSUseSSL <Boolean>

$Trueの値は、Secure Sockets Layer (SSL) プロトコルを使用してターゲット コンピューターへの接続を確立します。 既定では、SSL は使用されません。 $Falseの値は無効です。 このアクティビティ共通パラメーターは、ワークフロー共通パラメーターでもあります。

WS-Management は、ネットワークを介して転送されるすべての Windows PowerShell コンテンツを暗号化します。 UseSSL は、HTTP ではなく HTTPS 経由でデータを送信する追加の保護です。 コマンドに使用するポートで SSL が使用できない場合に、このパラメーターを指定すると、コマンドは失敗します。

PSVerbose <PSDataCollection[VerboseRecord]>

詳細メッセージをコンソールまたはワークフロー ジョブの Verbose プロパティの値に書き込む代わりに、アクティビティから指定した詳細レコード コレクションに詳細メッセージを追加します。 複数のアクティビティからの詳細メッセージを、同じ詳細レコード コレクション オブジェクトに追加できます。

PSWarning <PSDataCollection[WarningRecord]>

警告メッセージをコンソールまたはワークフロー ジョブの Warning プロパティの値に書き込むのではなく、指定した警告レコード コレクションにアクティビティから警告メッセージを追加します。 複数のアクティビティからの警告メッセージを、同じ警告レコード コレクション オブジェクトに追加できます。

結果

このパラメーターは、XAML ワークフローでのみ有効です。

UseDefaultInput <Boolean>

すべてのワークフロー入力を値によるアクティビティへの入力として受け入れます。

たとえば、次のサンプル ワークフローの Get-Process アクティビティでは、 UseDefaultInput アクティビティの共通パラメーターを使用して、ワークフローに渡される入力を取得します。 入力を伴うワークフローを実行する場合、その入力がアクティビティによって使用されます。

workflow Test-Workflow
{
    Get-Service -UseDefaultInput $True
}

PS C:> Test-Workflow -InputObject WinRm
Status   Name        DisplayName                            PSComputerName
------   ----        -----------                            --------------
Running  winrm       Windows Remote Management (WS-Manag... localhost

Verbose <SwitchParameter>

コマンドによって実行された操作に関する詳細情報を表示します。 この情報は、トレースまたはトランザクション ログ内の情報に似ています。 Verbose パラメーターは、現在のコマンドの$VerbosePreference変数の値をオーバーライドします。 このパラメーターは、コマンドが詳細メッセージを生成する場合にのみ機能します。 このパラメーターは、Windows PowerShell の共通パラメーターでもあります。

WarningAction <ActionPreference>

アクティビティが警告にどのように応答するかを決定します。 既定値は Continue です。 WarningAction パラメーターは、現在のコマンドの$WarningPreference変数の値をオーバーライドします。 このパラメーターは、コマンドによって警告メッセージが生成された場合にのみ機能します。 このパラメーターは、Windows PowerShell の共通パラメーターでもあります。

有効な値:

  • SilentlyContinue. 警告メッセージを抑制し、コマンドの実行を続行します。

  • Continue. 警告メッセージを表示し、コマンドの実行を続行します。 既定値は Continue です。

  • Inquire. 警告メッセージを表示し、実行を続行する前に確認を求められます。 この値はほとんど使用しません。

  • Stop. 警告メッセージを表示し、コマンドの実行を停止します。

Note

WarningAction パラメーターは、スクリプトまたは関数を実行するコマンドでパラメーターを使用する場合、$WarningAction基本設定変数の値をオーバーライドしません。

アクティビティ共通パラメーターはきわめて便利です。 たとえば、 PSComputerName パラメーターを使用して、ターゲット コンピューターのサブセットでのみ特定のアクティビティを実行できます。

または、 PSConnectionRetryCount および PSConnectionRetryIntervalSec パラメーターを使用して、特定のアクティビティの再試行値を調整できます。

次の例では、 PSComputerName アクティビティの共通パラメーターを使用して、特定のドメインのコンピューターでのみ Get-EventLog アクティビティを実行する方法を示します。

Workflow Test-Workflow
{
    $UserDomain = Get-Content -Path '.\UserComputers.txt'
    $Log = (Get-EventLog -LogName "Windows PowerShell" `
      -PSComputerName $UserDomain)

    if ($Log)
    {
        # Do Work Here.
    }
}

参照