項目の新しいプロパティを作成し、その値を設定します。たとえば、New-ItemProperty を使用して、レジストリの値とデータの作成および変更を行うことができます。レジストリの値とデータはレジストリ キーのプロパティになります。

構文

New-ItemProperty [-LiteralPath] <string[]> [-Name] <string> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-PropertyType <string>] [-Value <Object>] [-確認] [-WhatIf] [-UseTransaction] [<CommonParameters>]

New-ItemProperty [-Path] <string[]> [-Name] <string> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-PropertyType <string>] [-Value <Object>] [-確認] [-WhatIf] [-UseTransaction] [<CommonParameters>]

説明

New-ItemProperty コマンドレットは、指定された項目に新しいプロパティを作成し、その値を設定します。通常、レジストリ値がレジストリ キー項目のプロパティになるため、このコマンドレットを使用して新しいレジストリ値が作成されます。

このコマンドレットではプロパティがオブジェクトに追加されません。オブジェクトのインスタンスにプロパティを追加するには、Add-Member コマンドレットを使用します。特定の種類のすべてのオブジェクトにプロパティを追加するには、Types.ps1xml ファイルを編集します。

パラメーター

-Credential <PSCredential>

この処理を実行するアクセス許可を持つユーザー アカウントを指定します。既定値は現在のユーザーです。

"User01" や "Domain01\User01" のようなユーザー名を入力するか、Get-Credential コマンドレットで生成されるような PSCredential オブジェクトを入力します。ユーザー名を入力すると、パスワードの入力を促すメッセージが表示されます。

このパラメーターは、Windows PowerShell でインストールされるプロバイダーではサポートされていません。

必須

false

位置

named

既定値

パイプライン入力を許可する

true (ByPropertyName)

ワイルドカード文字を許可する

false

-Exclude <string[]>

指定した項目を除外します。ワイルドカードを使用できます。

必須

false

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-Filter <string>

プロバイダーの形式や言語でフィルターを指定します。このパラメーターの値は、Path パラメーターを修飾します。

ワイルドカードを使用できるかどうかなど、フィルターの構文はプロバイダーによって異なります。フィルターは他のパラメーターよりも効率が良い方法です。これは、オブジェクトを取得した後に Windows PowerShell がオブジェクトをフィルターするのではなく、オブジェクトを取得する際にプロバイダーがフィルターを適用するためです。

必須

false

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-Force

設定しないとユーザーがアクセスできないオブジェクトのプロパティをコマンドレットで作成できるようにします。実装はプロバイダーごとに異なります。詳細については、「about_Providers」を参照してください。

必須

false

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-Include <string[]>

このパラメーターの値は、Path パラメーターを修飾します。"*.txt" などのパス要素またはパターンを入力します。ワイルドカードを使用できます。

必須

false

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-LiteralPath <string[]>

項目プロパティへのパスを指定します。LiteralPath の値は、入力した内容のまま使用されます。ワイルドカードとして解釈される文字はありません。パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。単一引用符で囲んだ文字はエスケープ シーケンスとして解釈されません。

必須

true

位置

1

既定値

パイプライン入力を許可する

true (ByPropertyName)

ワイルドカード文字を許可する

false

-Name <string>

新しいプロパティの名前を指定します。プロパティがレジストリ エントリである場合、このパラメーターはエントリの名前を指定します。

必須

true

位置

2

既定値

パイプライン入力を許可する

true (ByPropertyName)

ワイルドカード文字を許可する

false

-Path <string[]>

項目のパスを指定します。このパラメーターは、新しいプロパティが追加される項目を識別します。

必須

true

位置

1

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-PropertyType <string>

追加するプロパティの種類を指定します。

必須

false

位置

named

既定値

パイプライン入力を許可する

true (ByPropertyName)

ワイルドカード文字を許可する

false

-Value <Object>

プロパティ値を指定します。プロパティがレジストリ エントリである場合、このパラメーターはエントリの値を指定します。

必須

false

位置

named

既定値

パイプライン入力を許可する

true (ByPropertyName)

ワイルドカード文字を許可する

false

-確認

コマンドを実行する前に確認メッセージを表示します。

必須

false

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-WhatIf

実際にコマンドを実行せずに、コマンドを実行すると何が起きるかを出力します。

必須

false

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-UseTransaction

コマンドを有効なトランザクションに含めます。このパラメーターは、トランザクションの進行中のみ有効です。詳細については、「about_Transactions」を参照してください。

必須

false

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

<CommonParameters>

このコマンドレットは、次の共通パラメーターをサポートします: -Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer、および -OutVariable。Ô”¼š¤Ë¤Ä¤¤¤Æ¤Ï¡¢次を参照してください: about_Commonparameters.

入力と出力

入力値の型は、コマンドレットへのパイプが可能なオブジェクトの型です。戻り値の型は、コマンドレットによって返されるオブジェクトの型です。

入力

なし

パイプを使用して入力を New-ItemProperty に渡すことはできません。

出力

System.Management.Automation.PSCustomObject

New-ItemProperty は、新しいプロパティを格納するカスタム オブジェクトを返します。

New-ItemProperty コマンドレットは、プロバイダーによって公開されているデータを使用するように設計されています。セッションで使用可能なプロバイダーの一覧を表示するには、「Get-PSProvider」と入力します。詳細については、「about_Providers」を参照してください。

例 1

C:\PS>new-itemproperty -path HKLM:\Software\MyCompany -name NoOfEmployees -value 822

C:\PS> get-itemproperty hklm:\software\mycompany


PSPath        : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\mycompany
PSParentPath  : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software
PSChildName   : mycompany
PSDrive       : HKLM
PSProvider    : Microsoft.PowerShell.Core\Registry
NoOfLocations : 2
NoOfEmployees : 822

説明
-----------
このコマンドは、新しいレジストリ エントリ NoOfEmployees を HKLM:\Software ハイブの MyCompany キーに追加します。

最初のコマンドは Path パラメーターを使用して、MyCompany レジストリ キーのパスを指定します。また、エントリの名前の指定には Name パラメーター、その値の指定には Value パラメーターをそれぞれ使用します。

2 番目のコマンドは、Get-ItemProperty コマンドレットを使用して、新しいレジストリ エントリを表示します。






例 2

C:\PS>get-item -path HKLM:\Software\MyCompany | new-Itemproperty -name NoOfLocations -value 3

説明
-----------
このコマンドは、新しいレジストリ エントリをレジストリ キーに追加します。キーを指定するには、パイプライン演算子 (|) を使用してキーを表すオブジェクトを New-ItemProperty コマンドレットに送信します。

コマンドの最初の部分は Get-Item コマンドレットを使用して、MyCompany レジストリ キーを取得します。パイプライン演算子 (|) はコマンドの結果を New-ItemProperty コマンドレットに送信し、新しいレジストリ エントリ NoOfLocations およびその値となる 3 が MyCompany キーに追加されます。

このコマンドが実行されるのは、Windows PowerShell のパラメーター バインド機能では Get-Item が返す RegistryKey オブジェクトのパスが New-ItemProperty の LiteralPath パラメーターと関連付けられるからです。詳細については、「about_Pipelines」を参照してください。






関連項目




目次