Clear-Content

刪除物品內容,但不刪除該物品。

語法

Path (Default) - FileSystem provider

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

LiteralPath - FileSystem provider

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

Path (Default) - All providers

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

LiteralPath - All providers

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

Description

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 cmdlet 來取得從網路下載的串流Copy-Script.ps1內容Zone.Identifier。

第二個指令使用 Clear-Content 指令本來清除內容。

第三個指令重複第一個指令。 它會驗證內容已被清除,但串流仍然存在。 如果串流被刪除,指令會產生錯誤。

你可以用類似的方法清除另一條資料流的內容。 然而,這並非消除封鎖從網路下載檔案的安全檢查的推薦方式。 如果您確認下載的檔案是安全的,請使用 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
預設值:None
支援萬用字元:False
不要顯示:False
別名:參見

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Credential

Note

任何與 PowerShell 一起安裝的提供者都不支援此參數。 若要冒充其他使用者,或在執行此 cmdlet 時提升你的憑證,請使用 Invoke-Command。

參數屬性

類型:PSCredential
預設值:Current user
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-Exclude

以字串陣列的形式指定此指令子從內容路徑中省略的字串。 此參數的值對 路徑 參數進行限定。 輸入路徑元素或模式,例如 *.txt。 允許使用通配符。

參數屬性

類型:

String[]

預設值:None
支援萬用字元:True
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Filter

指定提供者格式或語言中的過濾器。 此參數的值對 路徑 參數進行限定。 過濾器的語法,包括使用萬用字元,取決於提供者。 過濾器比其他參數更有效率,因為提供者在取回物件時套用這些參數,而不是讓 PowerShell 在取回物件後再過濾。

參數屬性

類型:String
預設值:None
支援萬用字元:True
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Force

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

參數屬性

類型:SwitchParameter
預設值:False
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Include

以字串陣列的形式指定內容,該指令碼會清除該內容。 此參數的值對 路徑 參數進行限定。 輸入路徑元素或模式,例如 *.txt。 允許使用通配符。

參數屬性

類型:

String[]

預設值:None
支援萬用字元:True
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-LiteralPath

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

參數屬性

類型:

String[]

預設值:None
支援萬用字元:False
不要顯示:False
別名:PSPath, LP

參數集

LiteralPath
Position:Named
必要:True
來自管線的值:False
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-Path

指定刪除內容的路徑。 允許使用通配符。 路徑必須是項目的路徑,而不是容器的路徑。 例如,您必須指定一或多個檔案的路徑,而不是目錄的路徑。 允許使用通配符。 此參數是必須的,但參數名稱(路徑)為可選。

參數屬性

類型:

String[]

預設值:None
支援萬用字元:True
不要顯示:False

參數集

Path
Position:0
必要:True
來自管線的值:False
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-Stream

這是 FileSystem 提供者所提供的動態參數。 此參數僅適用於 Windows。

指定內容的替代資料流。 如果串流不存在,這個指令碼會建立它。 不支援通配符。

你可以用 Clear-Content cmdlet 來更改任何替代資料流的內容,例如 Zone.Identifier。 然而,我們不建議以此作為消除封鎖從網路下載檔案的安全檢查的方法。 如果您確認下載的檔案是安全的,請使用 Unblock-File Cmdlet。

此參數是在 PowerShell 3.0 中引進的。 從 PowerShell 7.2 起,可以 Clear-Content 清除目錄和檔案中替代資料流的內容。

如需詳細資訊,請參閱 about_FileSystem_Provider。

參數屬性

類型:String
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-WhatIf

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

參數屬性

類型:SwitchParameter
預設值:False
支援萬用字元:False
不要顯示:False
別名:威斯康辛

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

CommonParameters

此 cmdlet 支援常見參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters。

輸入

None

您不能將物件透過管道傳送到此 Cmdlet。

輸出

None

此 Cmdlet 不會傳回任何輸出。

備註

PowerShell 包含下列 Clear-Content的別名:

  • 所有平臺:
    • clc

你可以搭配 PowerShell 檔案系統提供者以及其他處理內容的提供者一起使用 Clear-Content 。 要清除不被視為內容的項目,例如由 PowerShell 憑證或登錄檔提供者管理的項目,請使用 Clear-Item。

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