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
[-Path] <string[]>
[[-Value] <Object>]
[-Force]
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Options <ScopedItemOptions>]
[<CommonParameters>]
Set-Item
[[-Value] <Object>]
-LiteralPath <string[]>
[-Force]
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Options <ScopedItemOptions>]
[<CommonParameters>]
Set-Item
[-Path] <string[]>
[[-Value] <Object>]
[-Force]
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
Set-Item
[[-Value] <Object>]
-LiteralPath <string[]>
[-Force]
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
説明
コマンドレットは Set-Item
、変数やレジストリ キーなどの項目の値を、 コマンドで指定された値に変更します。
例
例 1: エイリアスをCreateする
このコマンドは、メモ帳の np のエイリアスを作成します。
Set-Item -Path alias:np -Value "c:\windows\notepad.exe"
例 2: 環境変数の値を変更する
このコマンドは、UserRole 環境変数の値を Administrator に変更します。
Set-Item -Path env:UserRole -Value "Administrator"
例 3: プロンプト関数を変更する
このコマンドは、パスの前の時刻を表示するように prompt 関数を変更します。
Set-Item -Path function:prompt -Value {'PS '+ (Get-Date -Format t) + " " + (Get-Location) + '> '}
例 4: プロンプト関数のオプションを設定する
このコマンドは、プロンプト関数の AllScope オプションと ReadOnly オプションを設定します。
このコマンドでは、 の Options 動的パラメーターを Set-Item
使用します。
Options パラメーターは、Alias または Function プロバイダーで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 |
-Options
これは、 Alias プロバイダーと Function プロバイダーが使用できる動的パラメーターです。 詳細については、「 about_Alias_Provider と about_Function_Provider」を参照してください。
エイリアスの Options プロパティの値を指定します。
有効な値は次のとおりです。
None
: エイリアスに制約はありません (既定値)ReadOnly
: エイリアスは削除できますが、 Force パラメーターを使用しないと変更できませんConstant
: エイリアスを削除または変更することはできませんPrivate
: エイリアスは現在のスコープでのみ使用できますAllScope
: エイリアスは、作成された新しいスコープにコピーされますUnspecified
: オプションが指定されていません
Type: | ScopedItemOptions |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
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 |
-Type
これは、 レジストリ プロバイダーが使用できる動的パラメーターです。 レジストリ プロバイダーとこのパラメーターは、Windows でのみ使用できます。
このコマンドレットによって追加されるプロパティの種類を指定します。 このパラメーターの有効値は、次のとおりです。
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値に使用されます。Unknown
: REG_RESOURCE_LIST 値など、サポートされていないレジストリ データ型を示します。
Type: | RegistryValueKind |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-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
既定では、このコマンドレットは出力を返しません。
PassThru パラメーターを使用すると、このコマンドレットは項目を表すオブジェクトを返します。
メモ
PowerShell には、 の次のエイリアスが Set-Item
含まれています。
すべてのプラットフォーム:
si
Set-Item
は、PowerShell FileSystem プロバイダーではサポートされていません。 ファイル システム内の項目の値を変更するには、 コマンドレットを使用しますSet-Content
。レジストリ ドライブと
HKCU:
Set-Item
では、HKLM:
レジストリ キーの (既定値) 値のデータが変更されます。- レジストリ キーの名前を作成および変更するには、 コマンドレットと
Rename-Item
コマンドレットをNew-Item
使用します。 - レジストリ値の名前とデータを変更するには、および コマンドレットを
New-ItemProperty
Set-ItemProperty
Rename-ItemProperty
使用します。
- レジストリ キーの名前を作成および変更するには、 コマンドレットと
Set-Item
は、任意のプロバイダーによって公開されるデータを操作するように設計されています。 セッションで使用できるプロバイダーを一覧表示するには、「」と入力しますGet-PsProvider
。 詳細については、「about_Providers」を参照してください。