共用方式為


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>]

Description

Clear-Content Cmdlet 會刪除項目的內容,例如從檔案中刪除文字,但不會刪除專案。 因此,專案存在,但它是空的。 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 Cmdlet 如何從替代數據流清除內容,同時讓數據流保持不變。

第一個命令會使用 Get-Content Cmdlet,從因特網下載的 Copy-Script.ps1 檔案中取得 Zone.Identifier 數據流的內容。

第二個命令會使用 Clear-Content Cmdlet 來清除內容。

第三個命令會重複第一個命令。 它會驗證已清除內容,但數據流仍會維持不變。 如果已刪除資料流,此命令會產生錯誤。

您可以使用這樣的方法來清除替代數據流的內容。 不過,不建議排除封鎖從因特網下載之檔案的安全性檢查。 如果您確認下載的檔案是安全的,請使用 Unblock-File Cmdlet。

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

在執行 Cmdlet 之前,提示您進行確認。

類型:SwitchParameter
別名:cf
Position:Named
預設值:False
必要:False
接受管線輸入:False
接受萬用字元:False

-Credential

注意

任何與 PowerShell 一起安裝的提供者都不支援此參數。 若要模擬其他使用者,或在執行此 Cmdlet 時提升您的認證,請使用 Invoke-Command。

類型:PSCredential
Position:Named
預設值:Current user
必要:False
接受管線輸入:True
接受萬用字元:False

-Exclude

指定此 Cmdlet 從內容路徑省略的字串,做為字串陣列。 此參數的值會限定 path 參數。 輸入路徑專案或模式,例如 「*.txt」。。 允許通配符。

類型:String[]
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:True

-Filter

以提供者的格式或語言指定篩選。 此參數的值會限定 path 參數。 篩選的語法,包括使用通配符,取決於提供者。 篩選比其他參數更有效率,因為提供者在擷取物件時會套用它們,而不是讓PowerShell在擷取對象之後篩選物件。

類型:String
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:True

-Force

強制命令執行,而不要求使用者確認。

類型:SwitchParameter
Position:Named
預設值:False
必要:False
接受管線輸入:False
接受萬用字元:False

-Include

指定此 Cmdlet 清除的字串數位內容。 此參數的值會限定 path 參數。 輸入路徑專案或模式,例如 「*.txt」。。 允許通配符。

類型:String[]
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:True

-LiteralPath

指定從中刪除內容之項目的路徑。 不同於 Path 參數,LiteralPath 的值會與輸入時完全相同。 不會將任何字元解譯為通配符。 如果路徑包含逸出字元,請以單引弧括住它。 單引號會指示讓PowerShell不要將任何字元解譯為逸出序列。

類型:String[]
別名:PSPath
Position:Named
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-Path

指定從中刪除內容之項目的路徑。 允許通配符。 路徑必須是項目的路徑,而不是容器的路徑。 例如,您必須指定一或多個檔案的路徑,而不是目錄的路徑。 允許通配符。 這是必要參數,但參數名稱 (“Path”) 是選擇性的。

類型:String[]
Position:0
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:True

-Stream

指定內容的替代數據流。 如果數據流不存在,此 Cmdlet 會建立它。 不支援通配符。

Stream 是 FileSystem 提供者新增至 Clear-Content的動態參數。 此參數僅適用於檔案系統磁碟驅動器。

您可以使用 Clear-Content Cmdlet 來變更 Zone.Identifier 替代數據流的內容。 不過,我們不建議這樣做,以消除封鎖從因特網下載之檔案的安全性檢查。 如果您確認下載的檔案是安全的,請使用 Unblock-File Cmdlet。

此參數是在 Windows PowerShell 3.0 中引進的。

類型:String
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-UseTransaction

在作用中交易中包含 命令。 只有在交易進行中時,此參數才有效。 如需詳細資訊,請參閱 about_transactions

類型:SwitchParameter
別名:usetx
Position:Named
預設值:False
必要:False
接受管線輸入:False
接受萬用字元:False

-WhatIf

顯示 Cmdlet 執行時會發生什麼事。 Cmdlet 未執行。

類型:SwitchParameter
別名:wi
Position:Named
預設值:False
必要:False
接受管線輸入:False
接受萬用字元:False

輸入

None

您無法使用管線將物件傳送至 Clear-Content

輸出

None

此 Cmdlet 不會傳回任何物件。

備註

您可以搭配 PowerShell FileSystem 提供者和其他操作內容的提供者使用 Clear-Content。 若要清除未被視為內容的專案,例如 PowerShell 憑證或登錄提供者所管理的專案,請使用 Clear-Item

Clear-Content Cmdlet 的設計目的是要處理任何提供者所公開的數據。 若要列出工作階段中可用的提供者,請輸入 Get-PsProvider。 如需詳細資訊,請參閱 about_Providers