Share via


Clear-Content

Elimina il contenuto di un elemento, ma non l'elemento.

Sintassi

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

Descrizione

Il Clear-Content cmdlet elimina il contenuto di un elemento, ad esempio l'eliminazione del testo da un file, ma non elimina l'elemento. Di conseguenza, l'elemento esiste, ma è vuoto. Clear-Content è simile a Clear-Item, ma funziona sugli elementi con contenuto, anziché su elementi con valori.

Esempio

Esempio 1: Eliminare tutto il contenuto da una directory

Clear-Content "..\SmpUsers\*\init.txt"

Questo comando elimina tutto il contenuto dai init.txt file in tutte le sottodirectory della SmpUsers directory. I file non vengono eliminati, ma sono vuoti.

Esempio 2: Eliminare il contenuto di tutti i file con un carattere jolly

Clear-Content -Path "*" -Filter "*.log" -Force

Questo comando elimina il contenuto di tutti i file nella directory corrente con l'estensione .log del nome file, inclusi i file con l'attributo di sola lettura. L'asterisco (*) nel percorso rappresenta tutti gli elementi nella directory corrente. Il parametro Force rende effettivo il comando nei file di sola lettura. L'uso di un filtro per limitare il comando ai file con l'estensione .log del nome file anziché specificare *.log nel percorso rende l'operazione più veloce.

Esempio 3: Cancellare tutti i dati da un flusso

In questo esempio viene illustrato come il Clear-Content cmdlet cancella il contenuto da un flusso di dati alternativo lasciando intatto il flusso.

Il primo comando usa il Get-Content cmdlet per ottenere il contenuto del Zone.Identifier flusso nel Copy-Script.ps1 file scaricato da Internet.

Il secondo comando usa il Clear-Content cmdlet per cancellare il contenuto.

Il terzo comando ripete il primo comando. Verifica che il contenuto sia cancellato, ma il flusso rimane. Se il flusso è stato eliminato, il comando genererà un errore.

È possibile usare un metodo come questo per cancellare il contenuto di un flusso di dati alternativo. Tuttavia, non è il metodo consigliato per eliminare i controlli di sicurezza che bloccano i file scaricati da Internet. Se si verifica che un file scaricato sia sicuro, usare il 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

Parametri

-Confirm

Richiede conferma prima di eseguire il cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Nota

Questo parametro non è supportato da alcun provider installato con PowerShell. Per rappresentare un altro utente o elevare le credenziali quando si esegue questo cmdlet, usare Invoke-Command.

Type:PSCredential
Position:Named
Default value:Current user
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Exclude

Specifica, come matrice di stringhe, stringhe che questo cmdlet omette dal percorso al contenuto. Il valore di questo parametro qualifica il parametro Path . Immettere un elemento o un modello di percorso, ad esempio *.txt. I caratteri jolly sono consentiti.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Filter

Specifica un filtro nel formato o nel linguaggio del provider. Il valore di questo parametro qualifica il parametro Path . La sintassi del filtro, incluso l'uso dei caratteri jolly, dipende dal provider. I filtri sono più efficienti rispetto ad altri parametri, perché il provider li applica durante il recupero degli oggetti, invece di filtrare gli oggetti dopo il recupero.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Force

Forza l'esecuzione del comando senza chiedere conferma all'utente.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Include

Specifica, come matrice di stringhe, contenuto che il cmdlet cancella. Il valore di questo parametro qualifica il parametro Path . Immettere un elemento o un modello di percorso, ad esempio *.txt. I caratteri jolly sono consentiti.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-LiteralPath

Specifica i percorsi degli elementi da cui viene eliminato il contenuto. A differenza del parametro Path , il valore di LiteralPath viene usato esattamente come viene tipizzato. Nessun carattere viene interpretato come carattere jolly. Se il percorso include caratteri di escape, racchiuderlo tra virgolette singole ('). Le virgolette singole indicano che PowerShell non interpreta alcun carattere come sequenze di escape.

Type:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Path

Specifica i percorsi degli elementi da cui viene eliminato il contenuto. I caratteri jolly sono consentiti. È necessario usare percorsi di elementi, non di contenitori. Ad esempio, è necessario specificare un percorso di uno o più file, non di una directory. I caratteri jolly sono consentiti. Questo parametro è obbligatorio, ma il nome del parametro (Path) è facoltativo.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-Stream

Si tratta di un parametro dinamico reso disponibile dal provider FileSystem . Questo parametro è disponibile solo in Windows.

Specifica un flusso di dati alternativo per il contenuto. Se il flusso non esiste, questo cmdlet lo crea. I caratteri jolly non sono supportati.

È possibile usare il Clear-Content cmdlet per modificare il contenuto di qualsiasi flusso di dati alternativo, ad esempio Zone.Identifier. Tuttavia, non è consigliabile farlo come modo per eliminare i controlli di sicurezza che bloccano i file scaricati da Internet. Se si verifica che un file scaricato sia sicuro, usare il Unblock-File cmdlet .

Questo parametro è stato introdotto in PowerShell 3.0. A partire da PowerShell 7.2, Clear-Content può cancellare il contenuto di flussi di dati alternativi da directory e file.

Per altre informazioni, vedere about_FileSystem_Provider.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Input

None

Non è possibile inviare tramite pipe oggetti a questo cmdlet.

Output

None

Questo cmdlet non restituisce output.

Note

PowerShell include gli alias seguenti per Clear-Content:

  • Tutte le piattaforme:
    • clc

È possibile usare Clear-Content con il provider FileSystem di PowerShell e con altri provider che modificano il contenuto. Per cancellare gli elementi non considerati come contenuti, ad esempio gli elementi gestiti dai provider di certificati PowerShell o del Registro di sistema, usare Clear-Item.

Il Clear-Content cmdlet è progettato per lavorare con i dati esposti da qualsiasi provider. Per elencare i provider disponibili nella sessione, digitare Get-PsProvider. Per altre informazioni, vedere about_Providers.