Clear-Variable
変数の値を削除します。
構文
Clear-Variable
[-Name] <String[]>
[-Include <String[]>]
[-Exclude <String[]>]
[-Force]
[-PassThru]
[-Scope <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
Clear-Variable
コマンドレットは、変数に格納されているデータを削除しますが、変数は削除しません。 その結果、変数の値は NULL (空) です。 変数に指定されたデータ型またはオブジェクト型がある場合、このコマンドレットは変数に格納されているオブジェクトの型を保持します。
例
例 1: 検索文字列で始まるグローバル変数の値を削除する
Clear-Variable my* -Scope Global
このコマンドは、my で始まる名前を持つグローバル変数の値を削除します。
例 2: 子スコープ内の変数をクリアするが、親スコープはクリアしない
$a=3
&{ Clear-Variable a }
$a
3
これらのコマンドは、子スコープ内の変数をクリアしても親スコープ内の変数はクリアされないことを示します。 最初のコマンドは、変数 $a
の値を 3 に設定します。 2 番目のコマンドでは、invoke 演算子 (&
) を使用して、新しいスコープで Clear-Variable
コマンドを実行します。 子スコープ内で (存在しない場合も) 変数がクリアされますが、ローカル スコープではクリアされません。
$a
の値を取得する 3 番目のコマンドは、値 3 が影響を受けていないことを示しています。
例 3: 指定した変数の値を削除する
Clear-Variable -Name "Processes"
このコマンドは、Processes という名前の変数の値を削除します。 コマンドレットが操作を完了しても、Processes という名前の変数は引き続き存在しますが、値は null です。
パラメーター
-Confirm
コマンドレットの実行前に確認を求めるメッセージが表示されます。
型: | SwitchParameter |
Aliases: | cf |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Exclude
このコマンドレットが操作で省略する項目の配列を指定します。 このパラメーターの値は、 Name パラメーターを修飾します。 「s*」などの名前要素またはパターンを入力します。 ワイルドカードを使用できます。
型: | String[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | True |
-Force
読み取り専用である場合でも、コマンドレットが変数をオフにできるようにします。 Force パラメーターを使用しても、コマンドレットは定数をクリアできません。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Include
このコマンドレットが操作に含める項目の配列を指定します。 このパラメーターの値は、 Name パラメーターを修飾します。 「s*」などの名前要素またはパターンを入力します。 ワイルドカードを使用できます。
型: | String[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | True |
-Name
クリアする変数の名前を指定します。 ワイルドカードを使用できます。 このパラメーターは必須ですが、パラメーター名 Name は省略可能です。
型: | String[] |
配置: | 0 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | True |
-PassThru
作業中の項目を表すオブジェクトを返します。 既定では、このコマンドレットによる出力はありません。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Scope
このエイリアスが有効なスコープを指定します。
このパラメーターの有効値は、次のとおりです。
Global
Local
Script
現在のスコープを基準とする数値を使用することもできます (0 からスコープの数まで、0 は現在のスコープ、1 は親)。 既定値は Local です。 詳細については、「 about_Scopes」を参照してください。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-WhatIf
コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。
型: | SwitchParameter |
Aliases: | wi |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
None
このコマンドレットにオブジェクトをパイプすることはできません。
出力
None
既定では、このコマンドレットは出力を返しません。
PassThru パラメーターを使用すると、このコマンドレットはクリアされた変数を表す PSVariable オブジェクトを返します。
メモ
PowerShell には、 Clear-Variable
の次のエイリアスが含まれています。
すべてのプラットフォーム:
clv
変数とその値を削除するには、
Remove-Variable
またはRemove-Item
を使用します。このコマンドレットは、 Force パラメーターを使用する場合でも、定数として設定されている変数またはシステムが所有する変数の値を削除しません。
クリアする変数が存在しない場合、コマンドレットの効果はありません。 null 値を持つ変数は作成されません。
関連リンク
PowerShell