項目の値を、コマンドで指定した値に変更します。

構文

Set-Item [-LiteralPath] <string[]> [[-Value] <Object>] [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-PassThru] [-確認] [-WhatIf] [-UseTransaction] [<CommonParameters>]

Set-Item [-Path] <string[]> [[-Value] <Object>] [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-PassThru] [-確認] [-WhatIf] [-UseTransaction] [<CommonParameters>]

説明

Set-Item コマンドレットは、変数やレジストリ キーなどの項目の値を、コマンドで指定した値に変更します。

パラメーター

-Credential <PSCredential>

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

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

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

必須

false

位置

named

既定値

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

true (ByPropertyName)

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

false

-Exclude <string[]>

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

必須

false

位置

named

既定値

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

false

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

false

-Filter <string>

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

必須

false

位置

named

既定値

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

false

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

false

-Force

読み取り専用のエイリアスまたは変数など、設定しないと変更できない項目をコマンドレットで設定できるようにします。コマンドレットでは、定数のエイリアスまたは変数は変更できません。実装はプロバイダーごとに異なります。詳細については、「about_Providers」を参照してください。Force パラメーターを使用しても、コマンドレットはセキュリティ制限を上書きできません。

必須

false

位置

named

既定値

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

false

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

false

-Include <string[]>

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

必須

false

位置

named

既定値

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

false

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

false

-LiteralPath <string[]>

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

必須

true

位置

1

既定値

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

true (ByPropertyName)

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

false

-PassThru

項目を表すオブジェクトをパイプラインに渡します。既定では、このコマンドレットによる出力はありません。

必須

false

位置

named

既定値

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

false

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

false

-Path <string[]>

新しい項目の場所のパスを指定します。ワイルドカードを使用できます。

必須

true

位置

1

既定値

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

true (ByPropertyName)

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

false

-Value <Object>

項目の新しい値を指定します。

必須

false

位置

2

既定値

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

true (ByValue, 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.

入力と出力

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

入力

System.Object

パイプを使用して項目の新しい値を表すオブジェクトを Set-Item に渡すことができます。

出力

なし、または新しい項目か変更された項目を表すオブジェクト。

Passthru パラメーターを使用すると、Set-Item は項目を表すオブジェクトを生成します。それ以外の場合、このコマンドレットによる出力はありません。

Set-Item は、その組み込みエイリアスである "si" で参照することもできます。詳細については、「about_Aliases」を参照してください。

Set-Item コマンドレットは、Windows PowerShell FileSystem プロバイダーではサポートされません。ファイル システム中の項目の値を変更するには、Set-Content を使用してください。

レジストリ ドライブ HKLM: と HKCU: では、Set-Item はレジストリ キーの (既定の) 値のデータを変更します。レジストリ キーの名前の作成と変更を行うには、New-Item と Rename-Item を使用します。レジストリ値の名前およびデータを変更するには、New-ItemProperty、Set-ItemProperty、および Rename-ItemProperty を使用します。

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

例 1

C:\PS>set-item -path alias:np -value c:\windows\notepad.exe

説明
-----------
このコマンドを実行すると、Notepad のエイリアス np が作成されます。






例 2

C:\PS>set-item -path env:UserRole -value Administrator

説明
-----------
このコマンドは、Set-Item コマンドレットを使用して、環境変数 "UserRole" の値を "Administrator" に変更します。






例 3

C:\PS>set-item -path function:prompt -value {'PS '+ $(Get-Date -format t) + " " + $(Get-Location) + '> '}

説明
-----------
次のコマンドは、Set-Item コマンドレットを使用してパスの前に時刻を表示するように prompt 関数を変更します。






例 4

C:\PS>set-item -path function:prompt -options "AllScope,ReadOnly"

説明
-----------
このコマンドは、prompt 関数の AllScope オプションと ReadOnly オプションを設定します。このコマンドは、Set-Item コマンドレットの Options 動的パラメーターを使用します。Options パラメーターを Set-Item で使用できるのは、Alias プロバイダーまたは Function プロバイダーと共に使用した場合のみです。






関連項目




目次