次の方法で共有


New-ItemProperty

項目の新しいプロパティを作成し、その値を設定します。

構文

New-ItemProperty
   [-Path] <String[]>
   [-Name] <String>
   [-PropertyType <String>]
   [-Value <Object>]
   [-Force]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [-UseTransaction]
   [<CommonParameters>]
New-ItemProperty
   -LiteralPath <String[]>
   [-Name] <String>
   [-PropertyType <String>]
   [-Value <Object>]
   [-Force]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [-UseTransaction]
   [<CommonParameters>]

説明

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

このコマンドレットではプロパティがオブジェクトに追加されません。

  • オブジェクトのインスタンスにプロパティを追加するには、 コマンドレットを Add-Member 使用します。
  • 特定の型のすべてのオブジェクトにプロパティを追加するには、Types.ps1xml ファイルを変更します。

例 1: レジストリ エントリを追加する

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

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

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

New-ItemProperty -Path "HKLM:\Software\MyCompany" -Name "NoOfEmployees" -Value 822
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

例 2: キーにレジストリ エントリを追加する

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

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

Get-Item -Path "HKLM:\Software\MyCompany" | New-ItemProperty -Name NoOfLocations -Value 3

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

例 3: Here-String を使用してレジストリに MultiString 値をCreateする

次の使用例は、Here-String を使用して MultiString 値を作成します。

$newValue = New-ItemProperty -Path "HKLM:\SOFTWARE\ContosoCompany\" -Name 'HereString' -PropertyType MultiString -Value @"
This is text which contains newlines
It can also contain "quoted" strings
"@
$newValue.multistring

This is text which contains newlines
It can also contain "quoted" strings

例 4: 配列を使用してレジストリに MultiString 値をCreateする

この例では、値の配列を使用して値を作成する方法を MultiString 示します。

$newValue = New-ItemProperty -Path "HKLM:\SOFTWARE\ContosoCompany\" -Name 'MultiString' -PropertyType MultiString -Value ('a','b','c')
$newValue.multistring[0]

a

パラメーター

-Confirm

コマンドレットの実行前に確認を求めるメッセージが表示されます。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

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

「User01」や「Domain01\User01」のようなユーザー名を入力するか、 コマンドレットで生成されるような Get-Credential オブジェクトを入力します。 ユーザー名を入力すると、パスワードの入力を求められます。

警告

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

Type:PSCredential
Position:Named
Default value:Current user
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Exclude

文字列配列として、このコマンドレットが操作から除外するプロパティまたはプロパティを指定します。 このパラメーターの値は、Path パラメーターを修飾します。 「*.txt」などのパス要素またはパターンを入力します。 ワイルドカード文字を使用できます。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Filter

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

ワイルドカード文字の使用を含むフィルターの構文は、プロバイダーによって異なります。 プロバイダーは、取得後に PowerShell でオブジェクトをフィルター処理するのではなく、コマンドレットがオブジェクトを取得するときにフィルターを適用するため、他のパラメーターよりも効率的です。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Force

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

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Include

文字列配列として、このコマンドレットが操作に含める項目を指定します。 このパラメーターの値は、Path パラメーターを修飾します。 「*.txt」などのパス要素またはパターンを入力します。 ワイルドカード文字を使用できます。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-LiteralPath

プロパティの現在の場所のパスを指定します。 Path パラメーターと異なり、LiteralPath の値は入力したとおりに使用されます。 ワイルドカードとして解釈される文字はありません。 パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。 一重引用符は、文字をエスケープ シーケンスとして解釈しないように PowerShell に指示します。

Type:String[]
Aliases:PSPath
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

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

Type:String
Aliases:PSProperty
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Path

項目のパスを指定します。 このパラメーターは、このコマンドレットが新しいプロパティを追加する項目を識別します。

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-PropertyType

このコマンドレットによって追加されるプロパティの種類を指定します。 このパラメーターの有効値は、次のとおりです。

  • String: null で終わる文字列を指定します。 REG_SZに相当します。
  • ExpandString: 値の取得時に展開される環境変数への展開されていない参照を含む null で終わる文字列を指定します。 REG_EXPAND_SZと同じです。
  • Binary: 任意の形式のバイナリ データを指定します。 REG_BINARYと同じです。
  • DWord: 32 ビットの 2 進数を指定します。 REG_DWORDと同じです。
  • MultiString: 2 つの null 文字で終わる null で終わる文字列の配列を指定します。 REG_MULTI_SZと同じです。
  • Qword: 64 ビットの 2 進数を指定します。 REG_QWORDと同じです。
  • 不明: REG_RESOURCE_LISTなど、サポートされていないレジストリ データ型を示します。
Type:String
Aliases:Type
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-UseTransaction

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

Type:SwitchParameter
Aliases:usetx
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Value

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

Type:Object
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

入力

None

パイプを使用してこのコマンドレットに入力を渡すことはできません。

出力

PSCustomObject

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

メモ

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