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。