Set-WmiInstance
既存の Windows Management Instrumentation (WMI) クラスのインスタンスを作成または更新します。
構文
Set-WmiInstance
[-Class] <String>
[-Arguments <Hashtable>]
[-PutType <PutType>]
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-WmiInstance
-InputObject <ManagementObject>
[-Arguments <Hashtable>]
[-PutType <PutType>]
[-AsJob]
[-ThrottleLimit <Int32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-WmiInstance
-Path <String>
[-Arguments <Hashtable>]
[-PutType <PutType>]
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-WmiInstance
[-PutType <PutType>]
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-WmiInstance
[-PutType <PutType>]
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-WmiInstance
[-PutType <PutType>]
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
Set-WmiInstance
コマンドレットは、既存の Windows Management Instrumentation (WMI) クラスのインスタンスを作成または更新します。
作成または更新されたインスタンスは、WMI リポジトリに書き込まれます。
Windows PowerShell 3.0 を導入した新しい CIM コマンドレットは、WMI コマンドレットと同じタスクを実行します。
CIM コマンドレットは、WS-Management (WSMan) 標準と共通情報モデル (CIM) 標準に準拠しています。
これにより、コマンドレットは、Windows ベースのコンピューターと他のオペレーティング システムを実行しているコンピューターを管理するために同じ手法を使用できます。
Set-WmiInstance
を使用する代わりに、Set-CimInstance を使用するか、New-CimInstance コマンドレットを することを検討してください。
例
例 1: WMI ログ レベルを設定する
PS C:\> Set-WmiInstance -Class Win32_WMISetting -Argument @{LoggingLevel=2}
__GENUS : 2
__CLASS : Win32_WMISetting
__SUPERCLASS : CIM_Setting
__DYNASTY : CIM_Setting
__RELPATH : Win32_WMISetting=@
__PROPERTY_COUNT : 27
__DERIVATION : {CIM_Setting}
__SERVER : SYSTEM01
__NAMESPACE : root\cimv2
__PATH : \\SYSTEM01\root\cimv2:Win32_WMISetting=@
ASPScriptDefaultNamespace : \\root\cimv2
ASPScriptEnabled : False
AutorecoverMofs : {%windir%\system32\wbem\cimwin32.mof, %windir%\system32\wbem\ncprov.mof, %windir%\syst
em32\wbem\wmipcima.mof, %windir%\system32\wbem\secrcw32.mof...}
AutoStartWin9X :
BackupInterval :
BackupLastTime :
BuildVersion : 6001.18000
Caption :
DatabaseDirectory : C:\Windows\system32\wbem\repository
DatabaseMaxSize :
Description :
EnableAnonWin9xConnections :
EnableEvents : False
EnableStartupHeapPreallocation : False
HighThresholdOnClientObjects :
HighThresholdOnEvents : 20000000
InstallationDirectory : C:\Windows\system32\wbem
LastStartupHeapPreallocation :
LoggingDirectory : C:\Windows\system32\wbem\Logs\
LoggingLevel : 2
LowThresholdOnClientObjects :
LowThresholdOnEvents : 10000000
MaxLogFileSize : 65536
MaxWaitOnClientObjects :
MaxWaitOnEvents : 2000
MofSelfInstallDirectory :
SettingID :
このコマンドは、WMI ログ レベルを 2 に設定します。 このコマンドは、設定するプロパティと値を引数パラメーターで値ペアと見なして渡します。 このパラメーターは、@{property = value} 構文によって定義されたハッシュ テーブルを受け取ります。 返されるクラス情報には、新しい値が反映されます。
例 2: 環境変数とその値を作成する
PS C:\> Set-WmiInstance -Class win32_environment -Argument @{Name="testvar";VariableValue="testvalue";UserName="<SYSTEM>"}
__GENUS : 2
__CLASS : Win32_Environment
__SUPERCLASS : CIM_SystemResource
__DYNASTY : CIM_ManagedSystemElement
__RELPATH : Win32_Environment.Name="testvar",UserName="<SYSTEM>"
__PROPERTY_COUNT : 8
__DERIVATION : {CIM_SystemResource, CIM_LogicalElement, CIM_ManagedSystemElement}
__SERVER : SYSTEM01
__NAMESPACE : root\cimv2
__PATH : \\SYSTEM01\root\cimv2:Win32_Environment.Name="testvar",UserName="<SYSTEM>"
Caption : <SYSTEM>\testvar
Description : <SYSTEM>\testvar
InstallDate :
Name : testvar
Status : OK
SystemVariable : True
UserName : <SYSTEM>
VariableValue : testvalue
このコマンドは、値が testvalue の testvar 環境変数を作成します。 これを行うには、Win32_Environment WMI クラスの新しいインスタンスを作成します。 この操作には適切な資格情報が必要であり、新しい環境変数を表示するには Windows PowerShell を再起動する必要がある場合があります。
例 3: 複数のリモート コンピューターの WMI ログ レベルを設定する
PS C:\> Set-WmiInstance -Class Win32_WMISetting -Argument @{LoggingLevel=2} -Computername "system01", "system02", "system03"
__GENUS : 2
__CLASS : Win32_WMISetting
__SUPERCLASS : CIM_Setting
__DYNASTY : CIM_Setting
__RELPATH : Win32_WMISetting=@
__PROPERTY_COUNT : 27
__DERIVATION : {CIM_Setting}
__SERVER : SYSTEM01
__NAMESPACE : root\cimv2
__PATH : \\SYSTEM01\root\cimv2:Win32_WMISetting=@
ASPScriptDefaultNamespace : \\root\cimv2
ASPScriptEnabled : False
AutorecoverMofs : {%windir%\system32\wbem\cimwin32.mof, %windir%\system32\wbem\ncprov.mof, %windir%\syst
em32\wbem\wmipcima.mof, %windir%\system32\wbem\secrcw32.mof...}
AutoStartWin9X :
BackupInterval :
BackupLastTime :
BuildVersion : 6001.18000
Caption :
DatabaseDirectory : C:\Windows\system32\wbem\repository
DatabaseMaxSize :
Description :
EnableAnonWin9xConnections :
EnableEvents : False
EnableStartupHeapPreallocation : False
HighThresholdOnClientObjects :
HighThresholdOnEvents : 20000000
InstallationDirectory : C:\Windows\system32\wbem
LastStartupHeapPreallocation :
LoggingDirectory : C:\Windows\system32\wbem\Logs\
LoggingLevel : 2
LowThresholdOnClientObjects :
LowThresholdOnEvents : 10000000
MaxLogFileSize : 65536
MaxWaitOnClientObjects :
MaxWaitOnEvents : 2000
MofSelfInstallDirectory :
SettingID :
...
このコマンドは、WMI ログ レベルを 2 に設定します。 このコマンドは、設定するプロパティと値を引数パラメーターで値ペアと見なして渡します。 このパラメーターは、@{property = value} 構文によって定義されたハッシュ テーブルを受け取ります。 返されるクラス情報には、新しい値が反映されます。
パラメーター
-Arguments
変更するプロパティの名前と、そのプロパティの新しい値を指定します。 名前と値は、名前と値のペアである必要があります。 名前と値のペアは、コマンド ラインでハッシュ テーブルとして渡されます。 例えば次が挙げられます。
@{Setting1=1; Setting2=5; Setting3="test"}
型: | Hashtable |
Aliases: | Args, Property |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-AsJob
この cmdket がバックグラウンド ジョブとして実行されることを示します。 このパラメーターを使用して、完了に時間がかかるコマンドを実行します。
AsJob パラメーターを指定すると、コマンドはバックグラウンド ジョブを表すオブジェクトを返し、コマンド プロンプトを表示します。 ジョブが完了している間も、セッションで作業を続けることができます。 リモート コンピューターに Set-WmiInstance を使用すると、ジョブはローカル コンピューター上に作成され、リモート コンピューターからの結果は自動的にローカル コンピューターに返されます。 ジョブを管理するには、Job 名詞 (Job コマンドレット) を含むコマンドレットを使用します。 ジョブの結果を取得するには、Receive-Job コマンドレットを使用します。
このパラメーターをリモート コンピューターと共に使用するには、リモート処理用にローカル コンピューターとリモート コンピューターを構成する必要があります。 さらに、Windows Vista 以降のバージョンの Windows オペレーティング システムでは、[管理者として実行] オプションを使用して Windows PowerShell を起動する必要があります。 詳細については、「about_Remote_Requirements」を参照してください。
Windows PowerShell バックグラウンド ジョブの詳細については、「about_Jobs と about_Remote_Jobs」を参照してください。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Authentication
WMI 接続で使用する必要がある認証レベルを指定します。 このパラメーターに使用できる値は次のとおりです。
- -1: 変更なし。
- 0: デフォルト。
- 1:なし。 認証は実行されません。
- 2:接続します。 認証は、クライアントがアプリケーションとの関係を確立した場合にのみ実行されます。
- 3:電話します。 認証は、アプリケーションが要求を受け取ったときに、各呼び出しの開始時にのみ実行されます。
- 4:パケット。 認証は、クライアントから受信したすべてのデータに対して実行されます。
- 5: パケット整合性。 クライアントとアプリケーションの間で転送されるすべてのデータが認証され、検証されます。
- 6:パケットプライバシー。 他の認証レベルのプロパティが使用され、すべてのデータが暗号化されます。
型: | AuthenticationLevel |
指定可能な値: | Default, None, Connect, Call, Packet, PacketIntegrity, PacketPrivacy, Unchanged |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Authority
WMI 接続の認証に使用する権限を指定します。 標準の NTLM 認証または Kerberos 認証を指定できます。 NTLM を使用するには、機関の設定を ntlmdomain に設定します。<DomainName>。DomainName<>は有効な NTLM ドメイン名を識別します。 Kerberos を使用するには、kerberos:<DomainName>\<ServerName>を指定します。 ローカル コンピューターに接続するときに、権限設定を含めることはできません。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Class
WMI クラスの名前を指定します。
型: | String |
配置: | 0 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-ComputerName
このコマンドレットを実行するコンピューターの名前を指定します。 既定値はローカル コンピューターです。
1 台以上のコンピューターの NetBIOS 名、IP アドレス、または完全修飾ドメイン名を入力します。 ローカル コンピューターを指定するには、コンピューター名、ドット (.)、または localhost を入力します。
このパラメーターは、Windows PowerShell リモート処理には依存しません。 コンピューターがリモート コマンドを実行するように構成されていない場合でも、ComputerName パラメーターを使用できます。
型: | String[] |
Aliases: | Cn |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Confirm
コマンドレットを実行する前に確認を求めるメッセージが表示されます。
型: | SwitchParameter |
Aliases: | cf |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Credential
このアクションを実行するアクセス許可を持つユーザー アカウントを指定します。 既定値は現在のユーザーです。
User01 や Domain01\User01 などのユーザー名を入力するか、Get-Credential コマンドレットによって生成されたオブジェクトなどの PSCredential オブジェクトを入力します。 ユーザー名を入力すると、このコマンドレットによってパスワードの入力が求められます。
このパラメーターは、Windows PowerShell と共にインストールされたプロバイダーでサポートされていないため、インストールされているプロバイダーではサポートされていません。
型: | PSCredential |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-EnableAllPrivileges
このコマンドレットは、WMI 呼び出しを行うコマンドの前に、現在のユーザーのすべてのアクセス許可を有効にすることを示します。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Impersonation
使用する偽装レベルを指定します。 このパラメーターに使用できる値は次のとおりです。
- 0: デフォルト。 既定の偽装レベルのローカル レジストリを読み取ります。通常は 3: Impersonate に設定されます。
- 1:匿名。 呼び出し元の資格情報を非表示にします。
- 2:識別します。 オブジェクトが呼び出し元の資格情報を照会できるようにします。
- 3:なりすまし。 オブジェクトが呼び出し元の資格情報を使用できるようにします。
- 4: 委任します。 オブジェクトが他のオブジェクトに呼び出し元の資格情報の使用を許可できるようにします。
型: | ImpersonationLevel |
指定可能な値: | Default, Anonymous, Identify, Impersonate, Delegate |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-InputObject
入力として使用する ManagementObject オブジェクトを指定します。 このパラメーターを使用すると、パラメーター 引数を除く他のすべてのパラメーターは無視されます。
型: | ManagementObject |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Locale
WMI オブジェクトの優先ロケールを指定します。 Locale パラメーターは、優先順序で MS_<LCID> 形式の配列で指定されます。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Namespace
クラス パラメーターで使用する場合に、参照先 WMI クラスが配置される WMI リポジトリ名前空間を指定します。
型: | String |
Aliases: | NS |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Path
作成または更新するインスタンスの WMI オブジェクト パスを指定します。
型: | String |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-PutType
WMI インスタンスを作成または更新するかどうかを示します。 このパラメーターに使用できる値は次のとおりです。
- UpdateOnly です。 既存の WMI インスタンスを更新します。
- CreateOnly です。 新しい WMI インスタンスを作成します。
- UpdateOrCreate です。 WMI インスタンスが存在する場合は更新し、インスタンスが存在しない場合は新しいインスタンスを作成します。
型: | PutType |
指定可能な値: | None, UpdateOnly, CreateOnly, UpdateOrCreate |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-ThrottleLimit
このコマンドを実行するために確立できる同時接続の最大数を指定します。 このパラメーターは、AsJob パラメーターと共に使用されます。 スロットル制限は、セッションまたはコンピューターではなく、現在のコマンドにのみ適用されます。
型: | Int32 |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-WhatIf
コマンドレットを実行した場合の動作を示します。 コマンドレットは実行されません。
型: | SwitchParameter |
Aliases: | wi |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
None
このコマンドレットは入力を受け付けません。
出力
None
このコマンドレットでは、出力は生成されません。