Clear-Item

項目の内容を削除します。項目自体は削除しません。

構文

Clear-Item [-LiteralPath] <string[]> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]

Clear-Item [-Path] <string[]> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]

説明

Clear-Item コマンドレットは、項目の値を削除しますが、項目自体は削除しません。たとえば、Clear-Item を使用して変数の値を削除することができますが、変数自体は削除されません。クリアする項目を表すために使用する値は、それぞれの Windows PowerShell プロバイダーで定義されています。Clear-Item は Clear-Content に似ていますが、ファイルではなくエイリアスや変数に対して使用します。

パラメーター

-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

-Path <string[]>

削除する項目のパスを指定します。ワイルドカードを使用できます。このパラメーターは必須ですが、パラメーター名 (Path) は省略可能です。

必須

true

位置

1

既定値

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

true (ByValue, ByPropertyName)

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

false

-Confirm

コマンドを実行する前に確認メッセージを表示します。

必須

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.String

パイプを使用してパス文字列を Clear-Item に渡すことができます。

出力

なし

このコマンドレットはオブジェクトを返しません。

Clear-Item コマンドレットをサポートしている Windows PowerShell プロバイダーは、Alias、Environment、Function、Registry、Variable など、いくつかのプロバイダーだけです。そのため、Clear-Item を使用して、プロバイダーの名前空間内の項目の内容を削除することができます。

Windows PowerShell の FileSystem プロバイダーはこのコマンドレットをサポートしていないため、Clear-Item を使用してファイルの内容を削除することはできません。ファイルをクリアするには、Clear-Content を使用してください。

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

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

例 1

C:\PS>clear-item Variable:TestVar1

説明
-----------
このコマンドを実行すると、変数 TestVar1 の値が削除されます。変数は有効なまま残りますが、その値には null が設定されます。
  
Windows PowerShell Variable プロバイダーを表すため、変数の先頭に "Varible:" を付けます。Windows PowerShell Variable プロバイダーの名前空間に切り替えてから Clear-Item コマンドを実行しても、結果は同じになります。

    PS C:> Set-location Variable:
    PS Variable:\> clear-item Testvar1





例 2

C:\PS>clear-item Alias:log* -include *1* -exclude *3* -whatif

What if: Performing operation "Clear Item" on Target "Item: log1".

説明
-----------
このコマンドは、コマンド "clear-item alias:log* -include *1* -exclude *3" を実行した場合、どのような結果になるかを Windows PowerShell に確認します。応答として、log1 エイリアスの値が削除されることが示されます。

このコマンドは、log、log2、log13 エイリアスに対しては影響を及ぼしません。Alias プロバイダーでは、値を持たないエイリアスが禁止されているため、エイリアスをクリアすると、エイリアス自体が削除されます。





例 3

C:\PS>clear-item registry::HKLM\Software\MyCompany\MyKey -confirm

説明
-----------
このコマンドを実行すると、MyKey サブキー内のレジストリ エントリがすべて削除されますが、その前に必ず確認のためのメッセージが出力されます。MyKey サブキーが削除されることや、他のレジストリ キーやエントリが影響を受けることはありません。Include パラメーターと Exclude パラメーターを使用してレジストリ キーを指定できますが、これらのパラメーターでレジストリ エントリを指定することはできません。特定のレジストリ エントリを削除するには、Remove-ItemProperty を使用します。レジストリ エントリの値を削除するには、Clear-ItemProperty を使用します。





関連項目

概念

about_Providers
Copy-Item
Get-Item
Invoke-Item
Move-Item
Set-Item
New-Item
Remove-Item
Rename-Item