Invoke-CimMethod
CIM クラスのメソッドを呼び出します。
構文
ClassNameComputerSet (既定)
Invoke-CimMethod
[-ClassName] <String>
[[-Arguments] <IDictionary>]
[-MethodName] <String>
[-ComputerName <String[]>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ClassNameSessionSet
Invoke-CimMethod
[-ClassName] <String>
[[-Arguments] <IDictionary>]
[-MethodName] <String>
-CimSession <CimSession[]>
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ResourceUriSessionSet
Invoke-CimMethod
[[-Arguments] <IDictionary>]
[-MethodName] <String>
-ResourceUri <Uri>
-CimSession <CimSession[]>
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ResourceUriComputerSet
Invoke-CimMethod
[[-Arguments] <IDictionary>]
[-MethodName] <String>
-ResourceUri <Uri>
[-ComputerName <String[]>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
CimInstanceComputerSet
Invoke-CimMethod
[-InputObject] <CimInstance>
[[-Arguments] <IDictionary>]
[-MethodName] <String>
[-ResourceUri <Uri>]
[-ComputerName <String[]>]
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
CimInstanceSessionSet
Invoke-CimMethod
[-InputObject] <CimInstance>
[[-Arguments] <IDictionary>]
[-MethodName] <String>
-CimSession <CimSession[]>
[-ResourceUri <Uri>]
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
CimClassSessionSet
Invoke-CimMethod
[-CimClass] <CimClass>
[[-Arguments] <IDictionary>]
[-MethodName] <String>
-CimSession <CimSession[]>
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
CimClassComputerSet
Invoke-CimMethod
[-CimClass] <CimClass>
[[-Arguments] <IDictionary>]
[-MethodName] <String>
[-ComputerName <String[]>]
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
QuerySessionSet
Invoke-CimMethod
[[-Arguments] <IDictionary>]
[-MethodName] <String>
-Query <String>
-CimSession <CimSession[]>
[-QueryDialect <String>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
QueryComputerSet
Invoke-CimMethod
[[-Arguments] <IDictionary>]
[-MethodName] <String>
-Query <String>
[-QueryDialect <String>]
[-ComputerName <String[]>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
Invoke-CimMethod コマンドレットは、Arguments パラメーターで指定された名前と値のペアを使用して、CIM クラスまたは CIM インスタンスのメソッドを呼び出します。
InputObject パラメーターが指定されていない場合、コマンドレットは次のいずれかの方法で動作します。
- ComputerName パラメーターも CimSession パラメーターも指定されていない場合、このコマンドレットはコンポーネント オブジェクト モデル (COM) セッションを使用してローカル Windows Management Instrumentation (WMI) で動作します。
- ComputerName パラメーターまたは CimSession パラメーターが指定されている場合、このコマンドレットは ComputerName パラメーターまたは CimSession パラメーターで指定された CIM サーバーに対して動作します。
InputObject パラメーターが指定されている場合、コマンドレットは次のいずれかの方法で動作します。
- ComputerName パラメーターも CimSession パラメーターも指定されていない場合、このコマンドレットは入力オブジェクトの CIM セッションまたはコンピューター名を使用します。
- ComputerName パラメーターまたは CimSession パラメーターが指定されている場合、このコマンドレットは CimSession パラメーター値または ComputerName パラメーター値を使用します。 注:これはあまり一般的ではありません。
例
例 1: メソッドを呼び出す
Invoke-CimMethod -Query 'select * from Win32_Process where name like "notepad%"' -MethodName "Terminate"
このコマンドは、Win32_Process という名前の CIM クラスで Terminate という名前のメソッドを呼び出します。 CIM クラスは、クエリ "Select * from Win32_Process where name like 'notepad%'" によって取得されます。
例 2: CIM インスタンス オブジェクトを使用してメソッドを呼び出す
$x = Get-CimInstance -Query 'Select * from Win32_Process where name like "notepad%"'
Invoke-CimMethod -InputObject $x -MethodName GetOwner
この一連のコマンドは、CIM インスタンス オブジェクトを取得し、Get-CimInstance コマンドレットを使用して $x という名前の変数に格納します。 その後、変数の内容は Invoke-CimMethod コマンドレットの InputObject として使用され、CimInstance の GetOwner メソッドが呼び出されます。
例 3: 静的メソッドを呼び出す
Invoke-CimMethod -ClassName Win32_Process -MethodName "Create" -Arguments @{ Path = "notepad.exe" }
このコマンドは、Arguments パラメーターで指定された引数を使用して、Win32_Process という名前のクラスで静的メソッド Create を呼び出します。
例 4: 引数を使用してメソッドを呼び出す
Invoke-CimMethod -ClassName Win32_Process -MethodName "Create" -Arguments @{ CommandLine = 'notepad.exe'; CurrentDirectory = "C:\windows\system32" }
このコマンドは、Arguments パラメーターを使用して Create という名前のメソッドを呼び出します。
例 5: クライアント側の検証
$c = Get-CimClass -ClassName Win32_Process
Invoke-CimMethod -CimClass $c -MethodName "xyz" -Arguments @{ CommandLine = 'notepad.exe' }
このコマンド セットは、Invoke-CimMethod コマンドレットに CimClass オブジェクトを渡すことで、xyz という名前のメソッドのクライアント側の検証を実行します。
パラメーター
-Arguments
呼び出されたメソッドに渡すパラメーターを指定します。 ハッシュ テーブルに格納されている名前と値のペアとして、このパラメーターの値を指定します。 入力された値の順序は重要ではありません。
パラメーターのプロパティ
| 型: | IDictionary |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | 1 |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
-CimClass
サーバー上の CIM クラス定義を表す CIM クラス・オブジェクトを指定します。 クラスの静的メソッドを呼び出す場合は、このパラメーターを使用します。
Get-CimClass コマンドレットを使用して、サーバーからクラス定義を取得できます。
このパラメーターを使用すると、クライアント側のスキーマ検証が向上します。
パラメーターのプロパティ
| 型: | CimClass |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
CimClassSessionSet
| 配置: | 0 |
| 必須: | True |
| パイプラインからの値: | True |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
CimClassComputerSet
| 配置: | 0 |
| 必須: | True |
| パイプラインからの値: | True |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-CimSession
指定した CIM セッションを使用してコマンドを実行します。 CIM セッションを含む変数、または CIM セッションを作成または取得するコマンド (New-CimSession コマンドレットや Get-CimSession コマンドレットなど) を入力します。 詳細については、about_CimSessionsを参照してください。
パラメーターのプロパティ
| 型: | CimSession[] |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
ClassNameSessionSet
| 配置: | Named |
| 必須: | True |
| パイプラインからの値: | True |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
CimInstanceSessionSet
| 配置: | Named |
| 必須: | True |
| パイプラインからの値: | True |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
CimClassSessionSet
| 配置: | Named |
| 必須: | True |
| パイプラインからの値: | True |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
QuerySessionSet
| 配置: | Named |
| 必須: | True |
| パイプラインからの値: | True |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-ClassName
操作を実行する CIM クラスの名前を指定します。 このパラメーターは、静的メソッドにのみ使用されます。 注 : Windows PowerShell はローカル WMI サーバーからクラスの一覧を取得してクラス名の一覧を提供するため、タブ補完を使用してクラスの一覧を参照できます。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | クラス |
パラメーター セット
ClassNameComputerSet
| 配置: | 0 |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
ClassNameSessionSet
| 配置: | 0 |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
-ComputerName
CIM 操作を実行するコンピューターの名前を指定します。 完全修飾ドメイン名 (FQDN)、NetBIOS 名、または IP アドレスを指定できます。
このパラメーターを指定すると、コマンドレットは WsMan プロトコルを使用して、指定されたコンピューターへの一時的なセッションを作成します。
このパラメーターを指定しない場合、コマンドレットはコンポーネント オブジェクト モデル (COM) を使用してローカル コンピューターで操作を実行します。
同じコンピューターで複数の操作が実行されている場合、CIM セッションを使用して接続するとパフォーマンスが向上します。
パラメーターのプロパティ
| 型: | String[] |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | CN, サーバー名 |
パラメーター セット
ClassNameComputerSet
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
ResourceUriComputerSet
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
CimClassComputerSet
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
QueryComputerSet
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
-Confirm
コマンドレットを実行する前に確認を求めるメッセージが表示されます。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | False |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | cf |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-InputObject
メソッドを呼び出す入力として使用する CIM インスタンス オブジェクトを指定します。
このパラメーターは、インスタンス メソッドの呼び出しにのみ使用できます。 クラスの静的メソッドを呼び出すには、Class パラメータまたは CimClass パラメータを使用します。
パラメーターのプロパティ
| 型: | CimInstance |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | CimInstance |
パラメーター セット
CimInstanceComputerSet
| 配置: | 0 |
| 必須: | True |
| パイプラインからの値: | True |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
CimInstanceSessionSet
| 配置: | 0 |
| 必須: | True |
| パイプラインからの値: | True |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-MethodName
呼び出す CIM メソッドの名前を指定します。 このパラメーターは必須であり、null または空にすることはできません。
CIM クラスの静的メソッドを呼び出すには、ClassName または CimClass パラメータを使用します。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | 名前 |
パラメーター セット
(All)
| 配置: | 2 |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
-Namespace
CIM 操作の名前空間を指定します。
既定の名前空間は root/cimv2 です。 PowerShell はローカル WMI サーバーから名前空間の一覧を取得して名前空間の一覧を提供するため、タブ補完を使用して名前空間の一覧を参照できます。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
ClassNameComputerSet
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
ClassNameSessionSet
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
ResourceUriSessionSet
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
ResourceUriComputerSet
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
QuerySessionSet
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
QueryComputerSet
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
-OperationTimeoutSec
コマンドレットがコンピューターからの応答を待機する時間を指定します。
既定では、値は 0 で、コマンドレットはサーバーの既定のタイムアウト値を使用することを意味します。
OperationTimeoutSec パラメーターが、堅牢な接続再試行タイムアウトの 3 分未満の値に設定されている場合、クライアントが再接続する前にサーバー上の操作がタイムアウトするため、OperationTimeoutSec パラメーターの値を超えるネットワーク 障害は復旧できません。
パラメーターのプロパティ
| 型: | UInt32 |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | OT |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Query
CIM サーバーで実行するクエリを指定します。 クエリの結果として受け取ったインスタンスに対してメソッドが呼び出されます。
QueryDialect パラメーターを使用して、クエリ言語を指定できます。
指定した値に二重引用符 (")、一重引用符 (')、または円記号 (\) が含まれている場合は、これらの文字の前に円記号 (\) を付けてエスケープする必要があります。 指定した値で WQL LIKE 演算子を使用する場合は、パーセント (%)、アンダースコア (_)、または左角かっこ ([]) の文字を角かっこ ([]) で囲んでエスケープする必要があります。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
QuerySessionSet
| 配置: | Named |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
QueryComputerSet
| 配置: | Named |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
-QueryDialect
Query パラメーターに使用するクエリ言語を指定します。 このパラメーターに指定できる値は、WQL または CQL です。
デフォルト値は WQL です。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
QuerySessionSet
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
QueryComputerSet
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
-ResourceUri
リソースクラスまたはインスタンスの統一リソース識別子 (URI) を指定します。 URI は、コンピューター上のディスクやプロセスなどの特定の種類のリソースを識別するために使用されます。
URI は、プレフィックスとリソースへのパスで構成されます。 例えば次が挙げられます。
https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
http://intel.com/wbem/wscim/1/amt-schema/1/AMT_GeneralSettings
既定では、このパラメーターを指定しない場合は、DMTF 標準リソース URI http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/ が使用され、クラス名が追加されます。
ResourceURI は、WSMan プロトコルを使用して作成された CIM セッション、または WSMan を使用して CIM セッションを作成する ComputerName パラメーターを指定する場合にのみ使用できます。 ComputerName パラメーターを指定せずにこのパラメーターを指定した場合、または DCOM プロトコルを使用して作成された CIM セッションを指定した場合、DCOM プロトコルは ResourceURI パラメーターをサポートしていないため、エラーが発生します。
ResourceUri パラメーターと Filter パラメーターの両方が指定されている場合、Filter パラメーターは無視されます。
パラメーターのプロパティ
| 型: | Uri |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
ResourceUriSessionSet
| 配置: | Named |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
ResourceUriComputerSet
| 配置: | Named |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
-WhatIf
コマンドレットを実行した場合の動作を示します。 コマンドレットは実行されません。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | False |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | ウィスコンシン |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
CommonParameters
このコマンドレットでは、一般的なパラメーター -Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction、-WarningVariable の各パラメーターがサポートされています。 詳細については、about_CommonParametersを参照してください。
入力
CIM class
このコマンドレットは、CIM クラスを入力オブジェクトとして受け取ります。
CIM instance
このコマンドレットは、CIM インスタンスを入力オブジェクトとして受け入れます。
出力
PSCustomObject
このコマンドレットはオブジェクトを返します。