刪除項目的內容,例如刪除檔案中的文字,但是不刪除該項目。

語法

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

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

描述

Clear-Content Cmdlet 會刪除項目的內容,例如刪除檔案中的文字,但是不刪除該項目。因此,此項目會存在,但卻是空的。Clear-Content 類似於 Clear-Item,但是它適用於檔案,而不是別名和變數。

參數

-Credential <PSCredential>

指定具有執行此動作之權限的使用者帳戶。預設為目前使用者。

請輸入使用者名稱,例如 "User01" 或 "Domain01\User01",或是輸入 PSCredential 物件,例如由 Get-Credential Cmdlet 所產生的物件。如果輸入使用者名稱,將會提示您提供密碼。

所有隨 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

允許此 Cmdlet 清除檔案內容,即使檔案是唯讀的亦然。實作因提供者而異。如需詳細資訊,請參閱 about_Providers。即便使用 Force 參數,此 Cmdlet 也無法覆寫安全性限制。

必要?

false

位置?

named

預設值

接受管線輸入?

false

接受萬用字元?

false

-Include <string[]>

只清除指定的項目。此參數的值用於限定 Path 參數。輸入路徑元素或模式,例如 "*.txt"。允許使用萬用字元。

必要?

false

位置?

named

預設值

接受管線輸入?

false

接受萬用字元?

false

-LiteralPath <string[]>

指定要刪除內容的項目所在路徑。LiteralPath 與 Path 不同,係取用實際輸入的內容做為參數值。任何字元均不被解譯成萬用字元。如果路徑中包含逸出字元,請將其置於單引號內。單引號係告訴 Windows PowerShell 不要將任何字元解譯成逸出序列。

必要?

true

位置?

1

預設值

接受管線輸入?

true (ByPropertyName)

接受萬用字元?

false

-Path <string[]>

指定要刪除內容的項目所在路徑。允許使用萬用字元。路徑必須指向項目而非指向容器。例如,指定的路徑必須指向一個或多個檔案,而非指向單一目錄。允許使用萬用字元。此參數為必要參數,但參數名稱 ("Path") 則為選擇性。

必要?

true

位置?

1

預設值

接受管線輸入?

true (ByPropertyName)

接受萬用字元?

false

-Confirm

在執行命令前先提示確認。

必要?

false

位置?

named

預設值

接受管線輸入?

false

接受萬用字元?

false

-WhatIf

說明執行命令時將會發生何種情況,但不會實際執行命令。

必要?

false

位置?

named

預設值

接受管線輸入?

false

接受萬用字元?

false

-UseTransaction

將命令加入現用交易中。此參數只有當交易進行中時才有效。如需詳細資訊,請參閱 about_Transactions。

必要?

false

位置?

named

預設值

接受管線輸入?

false

接受萬用字元?

false

<CommonParameters>

這個 Cmdlet 支援一般參數:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。如需詳細資訊,請參閱 about_Commonparameters.

輸入和輸出

輸入型別是可經由管道輸出至 Cmdlet 的物件型別。傳回型別則是 Cmdlet 所傳回的物件型別。

輸入

您無法經由管道將物件輸出至 Clear-Content。

輸出

這個 Cmdlet 不傳回任何物件。

附註

您也可以利用內建的別名 "clc" 來參照 Clear-Content。如需詳細資訊,請參閱 about_Aliases。

如果您省略 -Path 參數名稱,Path 的值就一定會是命令中的第一個參數,例如 "clear-content c:\mydir\*.txt"。如果包含參數名稱,則可依任意順序列出參數。

您可以搭配 Windows PowerShell 檔案系統提供者和其他可操控內容的提供者一起使用 Clear-Content。若要清除未被視為內容的項目,例如受 Windows PowerShell Certificate 提供者或登錄提供者所管理的項目,請使用 Clear-Item。

Clear-Content Cmdlet 設計的用意是要操作任一提供者所公開的資料。若要列出可在工作階段中使用的提供者,請輸入 "Get-PsProvider"。如需詳細資訊,請參閱 about_Providers。

範例 1

C:\PS>clear-content ..\SmpUsers\*\init.txt

描述
-----------
這個命令會從 SmpUsers 目錄下的全部子目錄,刪除其中所有 "init.txt" 檔案的內容。這些檔案並不會遭到刪除,但是會變成空的。






範例 2

C:\PS>clear-content -path * -filter *.log -force

描述
-----------
這個命令會刪除目前目錄中副檔名為 ".log" 之所有檔案的內容,包括具唯讀屬性的檔案。路徑中的星號 (*) 代表目前目錄中的所有項目。Force 參數會使命令對唯讀檔案生效。使用篩選器限制此命令處理具有 ".log" 副檔名的檔案,而不在路徑中指定 "*.log",可以使作業速度加快。






範例 3

C:\PS>clear-content c:\Temp\* -Include Smp* -Exclude *2* -whatif

描述
-----------
這個命令會要求預測您提交下列命令後所發生的情況:"clear-content c:\temp\* -include smp* -exclude *2*"。結果會列出將要清除的檔案;在這個範例中,是指在 Temp 目錄中檔名開頭為 "Smp"、且檔名不包含 "2" 的檔案。若要執行這個命令,請在不含 Whatif 參數條件下再執行一次。






請參閱




目錄