Clear-Content

Elimina el contenido de un elemento, pero no el elemento.

Syntax

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

Description

El Clear-Content cmdlet elimina el contenido de un elemento, como eliminar el texto de un archivo, pero no elimina el elemento. Como resultado, el elemento existe, pero está vacío. Clear-Content es similar a Clear-Item, pero funciona en elementos con contenido, en lugar de elementos con valores.

Ejemplos

Ejemplo 1: Eliminar todo el contenido de un directorio

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

Este comando elimina todo el contenido de los init.txt archivos de todos los subdirectorios del SmpUsers directorio. Los archivos no se eliminan, pero están vacíos.

Ejemplo 2: Eliminar contenido de todos los archivos con un carácter comodín

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

Este comando elimina el contenido de todos los archivos del directorio actual con la .log extensión de nombre de archivo, incluidos los archivos con el atributo de solo lectura. El asterisco (*) de la ruta de acceso representa todos los elementos del directorio actual. El parámetro Force hace que el comando sea eficaz en los archivos de solo lectura. El uso de un filtro para restringir el comando a los archivos con la .log extensión de nombre de archivo en lugar de especificar *.log en la ruta de acceso hace que la operación sea más rápida.

Ejemplo 3: Borrar todos los datos de una secuencia

En este ejemplo se muestra cómo el Clear-Content cmdlet borra el contenido de un flujo de datos alternativo mientras deja intacto el flujo.

El primer comando usa el Get-Content cmdlet para obtener el contenido de la Zone.Identifier secuencia en el Copy-Script.ps1 archivo, que se descargó de Internet.

El segundo comando usa el Clear-Content cmdlet para borrar el contenido.

El tercer comando repite el primer comando. Comprueba que se borra el contenido, pero la secuencia permanece. Si se eliminó la secuencia, el comando generaría un error.

Puede usar un método como este para borrar el contenido de un flujo de datos alternativo. Sin embargo, no es la manera recomendada para eliminar las comprobaciones de seguridad que bloquean los archivos que se descargan de Internet. Si comprueba que un archivo descargado es seguro, use el 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

Parámetros

-Confirm

Le solicita su confirmación antes de ejecutar el cmdlet.

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

-Credential

Nota:

Este parámetro no es compatible con ningún proveedor instalado con PowerShell. Para suplantar a otro usuario o elevar sus credenciales al ejecutar este cmdlet, use Invoke-Command.

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

-Exclude

Especifica, como matriz de cadenas, cadenas que este cmdlet omite de la ruta de acceso al contenido. El valor de este parámetro califica el parámetro Path . Escriba un elemento o patrón de ruta de acceso, como *.txt. Se permiten los caracteres comodín.

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

-Filter

Especifica un filtro en el formato o el lenguaje del proveedor. El valor de este parámetro califica el parámetro Path . La sintaxis del filtro, incluido el uso de caracteres comodín, depende del proveedor. Los filtros son más eficaces que otros parámetros, ya que el proveedor los aplica al recuperar los objetos, en lugar de que PowerShell filtre los objetos una vez recuperados.

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

-Force

Obliga al comando a ejecutarse sin solicitar la confirmación del usuario.

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

-Include

Especifica, como matriz de cadenas, el contenido que borra este cmdlet. El valor de este parámetro califica el parámetro Path . Escriba un elemento o patrón de ruta de acceso, como *.txt. Se permiten los caracteres comodín.

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

-LiteralPath

Especifica las rutas de acceso a los elementos de los que se elimina el contenido. A diferencia del parámetro Path , el valor de LiteralPath se usa exactamente como se escribe. Ninguno de los caracteres se interpreta como caracteres comodín. Si la ruta de acceso incluye caracteres de escape, escríbala entre comillas simples ('). Las comillas simples indican que PowerShell no interprete ningún carácter como secuencias de escape.

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

-Path

Especifica las rutas de acceso a los elementos de los que se elimina el contenido. Se permiten los caracteres comodín. Las rutas deben ser rutas de acceso a elementos, no a contenedores. Por ejemplo, debe especificar una ruta de acceso a uno o más archivos, no una ruta de acceso a un directorio. Se permiten los caracteres comodín. Este parámetro es obligatorio, pero el nombre del parámetro (Path) es opcional.

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

-Stream

Se trata de un parámetro dinámico que el proveedor FileSystem pone a disposición. Este parámetro solo está disponible en Windows.

Especifica un flujo de datos alternativo para el contenido. Si la secuencia no existe, este cmdlet lo crea. No se admite el uso de caracteres comodín.

Puede usar el Clear-Content cmdlet para cambiar el contenido de cualquier flujo de datos alternativo, como Zone.Identifier. Sin embargo, no se recomienda esto como una manera de eliminar las comprobaciones de seguridad que bloquean los archivos que se descargan de Internet. Si comprueba que un archivo descargado es seguro, use el Unblock-File cmdlet .

Este parámetro se introdujo en PowerShell 3.0. A partir de PowerShell 7.2, Clear-Content puede borrar el contenido de secuencias de datos alternativas de directorios, así como archivos.

Para obtener más información, consulte about_FileSystem_Provider.

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

-WhatIf

Muestra lo que sucedería si se ejecutara el cmdlet. El cmdlet no se ejecuta.

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

Entradas

None

No se pueden canalizar objetos a este cmdlet.

Salidas

None

Este cmdlet no devuelve ningún resultado.

Notas

PowerShell incluye los siguientes alias para Clear-Content:

  • Todas las plataformas:
    • clc

Puede usar Clear-Content con el proveedor FileSystem de PowerShell y con otros proveedores que manipulan el contenido. Para borrar los elementos que no se consideran contenido, como los elementos administrados por los proveedores de certificados o del Registro de PowerShell, use Clear-Item.

El Clear-Content cmdlet está diseñado para trabajar con los datos expuestos por cualquier proveedor. Para enumerar los proveedores disponibles en la sesión, escriba Get-PsProvider. Para obtener más información, consulte about_Providers.