Clear-Content
項目の内容を削除します。項目自体は削除しません。
構文
Clear-Content
[-Path] <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[-Stream <String>]
[<CommonParameters>]
Clear-Content
-LiteralPath <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[-Stream <String>]
[<CommonParameters>]
説明
コマンドレットは Clear-Content
、ファイルからテキストを削除するなど、アイテムの内容を削除しますが、アイテムは削除しません。
その結果、項目は残りますが、空になります。
Clear-Content
は にClear-Item
似ていますが、値を持つ項目ではなく、内容を持つ項目で動作します。
例
例 1: ディレクトリからすべてのコンテンツを削除する
Clear-Content "..\SmpUsers\*\init.txt"
このコマンドを実行すると、SmpUsers ディレクトリのすべてのサブディレクトリにある init.txt ファイルからすべての内容が削除されます。 ファイル自体は削除されず、空になります。
例 2: ワイルドカードを使用してすべてのファイルのコンテンツを削除する
Clear-Content -Path "*" -Filter "*.log" -Force
このコマンドを実行すると、読み取り専用属性が指定されているファイルを含め、現在のディレクトリ内で、拡張子が ".log" であるすべてのファイルから内容が削除されます。 パス中のアスタリスク (*) は、現在のディレクトリのすべての項目を表します。 Force パラメーターを使用すると、読み取り専用ファイルでコマンドが有効になります。 パスに *.log を指定する代わりに、フィルターを使用してコマンドを.logファイル名拡張子を持つファイルに制限すると、操作が高速になります。
例 3: ストリームからすべてのデータをクリアする
この例では、ストリームをそのまま残 Clear-Content
したまま、コマンドレットが代替データ ストリームからコンテンツをクリアする方法を示します。
最初のコマンドでは、 コマンドレットを Get-Content
使用して、インターネットからダウンロードされた Copy-Script.ps1 ファイル内の Zone.Identifier ストリームのコンテンツを取得します。
2 番目のコマンドでは、 コマンドレットを Clear-Content
使用してコンテンツをクリアします。
3 番目のコマンドは、最初のコマンドを繰り返します。 コンテンツがクリアされていることを確認しますが、ストリームは残ります。 ストリームが削除された場合、コマンドによってエラーが生成されます。
このようなメソッドを使用して、代替データ ストリームのコンテンツをクリアできます。 ただし、インターネットからダウンロードされるファイルをブロックするセキュリティ チェックをなくす方法としては推奨されません。 ダウンロードしたファイルが安全であることを確認する場合は、 コマンドレットを使用します Unblock-File
。
Get-Content C:\Test\Copy-Script.ps1 -Stream Zone.Identifier
[ZoneTransfer]
ZoneId=3
Clear-Content C:\Test\Copy-Script.ps1 -Stream Zone.Identifier
Get-Content C:\Test\Copy-Script.ps1 -Stream Zone.Identifier
パラメーター
-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」などのパス要素またはパターンを入力します。 ワイルドカードを使用できます。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Filter
プロバイダーの形式や言語でフィルターを指定します。 このパラメーターの値は、Path パラメーターを修飾します。 ワイルドカードを使用できるかどうかなど、フィルターの構文はプロバイダーによって異なります。 フィルターは、取得後に PowerShell でオブジェクトをフィルター処理するのではなく、オブジェクトの取得時にフィルターを適用するため、他のパラメーターよりも効率的です。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Force
ユーザーに確認せずに、直ちにコマンドを実行します。
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Include
このコマンドレットがクリアするコンテンツを文字列配列として指定します。 このパラメーターの値は、Path パラメーターを修飾します。 「*.txt」などのパス要素またはパターンを入力します。 ワイルドカードを使用できます。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-LiteralPath
内容を削除する項目へのパスを指定します。 Path パラメーターと異なり、LiteralPath の値は入力したとおりに使用されます。 ワイルドカードとして解釈される文字はありません。 パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。 単一引用符は、PowerShell で文字をエスケープ シーケンスとして解釈しないように指示します。
Type: | String[] |
Aliases: | PSPath |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Path
内容を削除する項目へのパスを指定します。 ワイルドカードを使用できます。 コンテナーのパスではなく、項目のパスを指定してください。 たとえば、ディレクトリのパスではなく、1 つ以上のファイルのパスを指定する必要があります。 ワイルドカードを使用できます。 このパラメーターは必須ですが、パラメーター名 (Path) は省略可能です。
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Stream
コンテンツの代替データ ストリームを指定します。 ストリームが存在しない場合、このコマンドレットによって作成されます。 ワイルドカード文字はサポートされていません。
Streamは、FileSystem プロバイダーが に追加するClear-Content
動的パラメーターです。
このパラメーターはファイル システム ドライブでのみ機能します。
コマンドレットを使用して、 Clear-Content
Zone.Identifier 代替データ ストリームの内容を変更できます。
ただし、インターネットからダウンロードされたファイルをブロックするセキュリティ チェックを排除する方法として、これはお勧めしません。
ダウンロードしたファイルが安全であることを確認する場合は、 コマンドレットを使用します Unblock-File
。
このパラメーターは Windows PowerShell 3.0 で導入されました。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseTransaction
アクティブなトランザクションのコマンドが含まれます。 このパラメーターは、トランザクションが進行中の場合のみ有効です。 詳細については、「 about_transactions」を参照してください。
Type: | SwitchParameter |
Aliases: | usetx |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
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
オブジェクトを に Clear-Content
パイプすることはできません。
出力
None
このコマンドレットはオブジェクトを返しません。
メモ
PowerShell FileSystem プロバイダーと、コンテンツを操作する他のプロバイダーで を使用 Clear-Content
できます。
PowerShell 証明書またはレジストリ プロバイダーによって管理されるアイテムなど、コンテンツと見なされないアイテムをクリアするには、 を使用 Clear-Item
します。
コマンドレットは Clear-Content
、任意のプロバイダーによって公開されるデータを操作するように設計されています。
セッションで使用できるプロバイダーを一覧表示するには、「」と入力します Get-PsProvider
。
詳細については、「about_Providers」を参照してください。