Set-Item
項目の値を、コマンドで指定した値に変更します。
構文
Set-Item
[-Path] <String[]>
[[-Value] <Object>]
[-Force]
[-PassThru]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-Item
-LiteralPath <String[]>
[[-Value] <Object>]
[-Force]
[-PassThru]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
コマンドレットは Set-Item
、変数やレジストリ キーなどの項目の値を、コマンドで指定された値に変更します。
例
例 1: 別名を作成する
このコマンドは、メモ帳の np のエイリアスを作成します。
Set-Item -Path alias:np -Value "c:\windows\notepad.exe"
例 2: 環境変数の値を変更する
このコマンドは、UserRole 環境変数の値を管理者に変更します。
Set-Item -Path env:UserRole -Value "Administrator"
例 3: プロンプト関数を変更する
このコマンドは、パスの前の時刻を表示するようにプロンプト関数を変更します。
Set-Item -Path function:prompt -Value {'PS '+ (Get-Date -Format t) + " " + (Get-Location) + '> '}
例 4: プロンプト関数のオプションを設定する
このコマンドは、プロンプト関数の AllScope オプションと ReadOnly オプションを設定します。
このコマンドでは、 Options の動的パラメーター Set-Item
を使用します。
Options パラメーターは、Alias プロバイダーまたは関数プロバイダーでSet-Item
使用する場合にのみ使用できます。
Set-Item -Path function:prompt -Options "AllScope,ReadOnly"
パラメーター
-Confirm
コマンドレットの実行前に確認を求めるメッセージが表示されます。
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
注意
このパラメーターは、PowerShell でインストールされているプロバイダーではサポートされていません。 別のユーザーを偽装したり、このコマンドレットを実行するときに資格情報を昇格させたりするには、 Invoke-Command を使用します。
Type: | PSCredential |
Position: | Named |
Default value: | Current user |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Exclude
文字列配列として、このコマンドレットが操作で除外する項目を指定します。 このパラメーターの値は、Path パラメーターを修飾します。 パス要素またはパターンを入力します (例: *.txt
. ワイルドカード文字を使用できます。 Exclude パラメーターは、コマンドに項目C:\Windows\*
の内容 (ワイルドカード文字がディレクトリの内容C:\Windows
を指定するなど) が含まれている場合にのみ有効です。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Filter
Path パラメーターを修飾するフィルターを指定します。 FileSystem プロバイダーは、フィルターの使用をサポートする唯一のインストール済み PowerShell プロバイダーです。 FileSystem フィルター言語の構文は、about_Wildcardsにあります。 フィルターは、取得後に PowerShell でオブジェクトをフィルター処理するのではなく、コマンドレットがオブジェクトを取得するときにフィルターを適用するため、他のパラメーターよりも効率的です。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Force
読み取り専用のエイリアスや変数など、変更できない項目を設定するようにコマンドレットに強制します。 コマンドレットでは、定数のエイリアスまたは変数は変更できません。 実装はプロバイダーごとに異なります。 詳細については、「about_Providers」を参照してください。 Force パラメーターを使用しても、コマンドレットはセキュリティ制限をオーバーライドできません。
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Include
文字列配列として、このコマンドレットが操作に含める項目を指定します。 このパラメーターの値は、Path パラメーターを修飾します。 パス要素またはパターンを入力します (例: "*.txt"
. ワイルドカード文字を使用できます。 Include パラメーターは、コマンドに項目C:\Windows\*
の内容 (ワイルドカード文字がディレクトリの内容C:\Windows
を指定するなど) が含まれている場合にのみ有効です。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-LiteralPath
1 つ以上の場所へのパスを指定します。 LiteralPath の値は、型指定されたとおりに使用されます。 ワイルドカードとして解釈される文字はありません。 パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。 単一引用符は、文字をエスケープ シーケンスとして解釈しないように PowerShell に指示します。
詳細については、「 about_Quoting_Rules」を参照してください。
Type: | String[] |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-PassThru
項目を表すオブジェクトをパイプラインに渡します。 既定では、このコマンドレットによる出力はありません。
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
項目の場所のパスを指定します。 ワイルドカード文字を使用できます。
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Value
項目の新しい値を指定します。
Type: | Object |
Position: | 1 |
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 or an object representing the new or changed item.
このコマンドレットは、 PassThru パラメーターを指定すると、項目を表すオブジェクトを生成します。 それ以外の場合、このコマンドレットによる出力はありません。
メモ
Set-Item
は PowerShell FileSystem プロバイダーではサポートされていません。 ファイル システム内の項目の値を変更するには、コマンドレットをSet-Content
使用します。- レジストリ ドライブで、
HKLM:
レジストリHKCU:
Set-Item
キーの (既定値) 値のデータを変更します。- レジストリ キーの名前を作成して変更するには、and
Rename-Item
コマンドレットをNew-Item
使用します。 - レジストリ値の名前とデータを変更するには、、
Set-ItemProperty
コマンドレットをRename-ItemProperty
使用New-ItemProperty
します。
- レジストリ キーの名前を作成して変更するには、and
Set-Item
は、任意のプロバイダーによって公開されるデータを操作するように設計されています。 セッションで使用できるプロバイダーを一覧表示するには、「.」と入力しますGet-PsProvider
。 詳細については、「about_Providers」を参照してください。