次の方法で共有


Get-CimAssociatedInstance

関連付けによって特定の CIM インスタンスに接続されている CIM インスタンスを取得します。

構文

Get-CimAssociatedInstance
   [[-Association] <String>]
   [-ResultClassName <String>]
   [-InputObject] <CimInstance>
   [-Namespace <String>]
   [-OperationTimeoutSec <UInt32>]
   [-ResourceUri <Uri>]
   [-ComputerName <String[]>]
   [-KeyOnly]
   [<CommonParameters>]
Get-CimAssociatedInstance
   [[-Association] <String>]
   [-ResultClassName <String>]
   [-InputObject] <CimInstance>
   [-Namespace <String>]
   [-OperationTimeoutSec <UInt32>]
   [-ResourceUri <Uri>]
   -CimSession <CimSession[]>
   [-KeyOnly]
   [<CommonParameters>]

説明

このコマンドレットは、Windows プラットフォームでのみ使用できます。

Get-CimAssociatedInstance コマンドレットは、関連付けによって、ソース インスタンスと呼ばれる特定の CIM インスタンスに接続されている CIM インスタンスを取得します。

アソシエーションでは、各 CIM インスタンスには名前付きロールがあり、同じ CIM インスタンスが異なるロールのアソシエーションに参加できます。

InputObject パラメーターが指定されていない場合、コマンドレットは次のいずれかの方法で動作します。

  • ComputerName パラメーターも CimSession パラメーターも指定されていない場合、このコマンドレットはコンポーネント オブジェクト モデル (COM) セッションを使用してローカル Windows Management Instrumentation (WMI) で動作します。
  • ComputerName パラメーターまたは CimSession パラメーターが指定されている場合、このコマンドレットは、ComputerName パラメーターまたは CimSession パラメーターで指定された CIM サーバーに対して動作します。

例 1: 特定のインスタンスの関連付けられているすべてのインスタンスを取得する

$disk = Get-CimInstance -ClassName Win32_LogicalDisk -KeyOnly
Get-CimAssociatedInstance -InputObject $disk[1]

この一連のコマンドは、Win32_LogicalDiskという名前のクラスのインスタンスを取得し、Get-CimInstance コマンドレットを使用して$diskという名前の変数に情報を格納します。 その後、変数内の最初の論理ディスク・インスタンスが、指定された CIM インスタンスのすべての関連 CIM インスタンスを取得するために、 Get-CimAssociatedInstance コマンドレットの入力オブジェクトとして使用されます。

例 2: 特定の型の関連付けられているすべてのインスタンスを取得する

$disk = Get-CimInstance -ClassName Win32_LogicalDisk -KeyOnly
Get-CimAssociatedInstance -InputObject $disk[1] -ResultClass Win32_DiskPartition

この一連のコマンドは、 Win32_LogicalDisk クラスのすべてのインスタンスを取得し、 $diskという名前の変数に格納します。 その後、変数内の最初の論理ディスク インスタンスが、 Get-CimAssociatedInstance コマンドレットの入力オブジェクトとして使用され、指定された関連付けクラス Win32_DiskPartitionを介して関連付けられているすべての関連インスタンスを取得します。

例 3: 特定のクラスの修飾子を使用して、関連付けられているすべてのインスタンスを取得する

この一連のコマンドは、 Winmgmt サービスに依存するサービスを取得し、 $sという名前の変数に格納します。 Get-CimAssociatedInstance は、取得した関連付けクラスの関連付けられたインスタンスを取得します。

$s = Get-CimInstance -Query "Select * from Win32_Service where name like 'Winmgmt'"
Get-CimAssociatedInstance -InputObject $s -Association Win32_DependentService

ProcessId Name            StartMode State   Status ExitCode
--------- ----            --------- -----   ------ --------
1716      RpcSs           Auto      Running OK     0
9964      CcmExec         Auto      Running OK     0
0         HgClientService Manual    Stopped OK     1077
0         smstsmgr        Manual    Stopped OK     1077
3396      vmms            Auto      Running OK     0

パラメーター

-Association

関連付けクラスの名前を指定します。 このパラメーターを指定しない場合、コマンドレットは任意の型のすべての既存の関連付けオブジェクトを返します。

たとえば、クラス A が AB1 と AB2 の 2 つの関連付けを介してクラス B に関連付けられている場合、このパラメーターを使用して、AB1 または AB2 のいずれかの関連付けの型を指定できます。

型:String
配置:1
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-CimSession

指定した CIM セッションを使用してコマンドを実行します。 CIM セッションを含む変数、または CIM セッションを作成または取得するコマンド ( New-CimSessionGet-CimSessionなど) を入力します。 詳細については、「 about_CimSession」を参照してください。

型:CimSession[]
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-ComputerName

CIM 操作を実行するコンピューターの名前を指定します。 完全修飾ドメイン名 (FQDN) または NetBIOS 名を指定できます。

このパラメーターを指定すると、コマンドレットは WsMan プロトコルを使用して、指定されたコンピューターへの一時的なセッションを作成します。

このパラメーターを指定しない場合、コマンドレットはコンポーネント オブジェクト モデル (COM) を使用してローカル コンピューターで操作を実行します。

同じコンピューターで複数の操作が実行されている場合、CIM セッションを使用して接続するとパフォーマンスが向上します。

型:String[]
Aliases:CN, ServerName
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-InputObject

このコマンドレットへの入力を指定します。 このパラメーターを使用することも、このコマンドレットに入力をパイプすることもできます。

InputObject パラメーターはコレクションを列挙しません。 コレクションが渡されると、エラーがスローされます。 コレクションを操作する場合は、入力をパイプして値を列挙します。

型:CimInstance
Aliases:CimInstance
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-KeyOnly

キー プロパティのみが設定されたオブジェクトを返します。 これにより、ネットワーク経由で転送されるデータの量が減ります。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Namespace

CIM 操作の名前空間を指定します。 既定の名前空間は root/cimv2 です。

Note

PowerShell はローカル WMI サーバーから名前空間の一覧を取得して名前空間の一覧を提供するため、タブ補完を使用して名前空間の一覧を参照できます。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-OperationTimeoutSec

コマンドレットがコンピューターからの応答を待機する時間を指定します。 既定では、このパラメーターの値は 0 です。これは、コマンドレットがサーバーの既定のタイムアウト値を使用することを意味します。

OperationTimeoutSecパラメーターが堅牢な接続再試行タイムアウト 3 分未満の値に設定されている場合、クライアントが再接続する前にサーバー上の操作がタイムアウトするため、OperationTimeoutSec パラメーターの値を超えるネットワーク障害は復旧できません。

型:UInt32
Aliases:OT
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-ResourceUri

リソース クラスまたはインスタンスのリソース Uniform Resource Identifier (URI) を指定します。 URI は、ディスクやプロセスなど、コンピューター上の特定の種類のリソースを特定するために使用されます。

URI は、プレフィックスとリソースのパスで構成されます。 次に例を示します。

  • http://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
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ResultClassName

関連付けられているインスタンスのクラス名を指定します。 CIM インスタンスは、1 つ以上の CIM インスタンスに関連付けることができます。 結果クラス名を指定しない場合は、関連するすべての CIM インスタンスが返されます。

既定では、このパラメーターの値は null であり、関連付けられているすべての CIM インスタンスが返されます。

関連付けの結果をフィルター処理して、特定のクラス名と一致させることができます。 フィルター処理はサーバーで行われます。 このパラメーターが指定されていない場合、 Get-CIMAssociatedInstance は既存のすべての関連付けを返します。 たとえば、クラス A がクラス B、C、D に関連付けられている場合、このパラメーターを使用して、出力を特定の型 (B、C、D) に制限できます。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

None

このコマンドレットにオブジェクトをパイプすることはできません。

出力

CimInstance

このコマンドレットは CIM インスタンス オブジェクトを返します。

メモ

PowerShell には、 Get-CimAssociatedInstanceの次のエイリアスが含まれています。

  • Windows:
    • gcai

このコマンドレットは、Windows プラットフォームでのみ使用できます。