Clear-Content

Exclui o conteúdo de um item, mas não exclui o item.

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

O Clear-Content cmdlet exclui o conteúdo de um item, como excluir o texto de um arquivo, mas não exclui o item. Como resultado, o item existe, mas fica vazio. Clear-Content é semelhante ao Clear-Item, mas funciona em itens com conteúdo, em vez de itens com valores.

Exemplos

Exemplo 1: Excluir todo o conteúdo de um diretório

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

Esse comando exclui todo o conteúdo dos init.txt arquivos em todos os subdiretórios do SmpUsers diretório. Os arquivos não serão excluídos, mas ficam vazios.

Exemplo 2: Excluir conteúdo de todos os arquivos com um curinga

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

Esse comando exclui o conteúdo de todos os arquivos no diretório atual com a .log extensão de nome de arquivo, incluindo arquivos com o atributo somente leitura. O asterisco (*) no caminho representa todos os itens no diretório atual. O parâmetro Force torna o comando efetivo em arquivos somente leitura. Usar um filtro para restringir o comando a arquivos com a .log extensão de nome de arquivo em vez de especificar *.log no caminho torna a operação mais rápida.

Exemplo 3: Limpar todos os dados de um fluxo

Este exemplo mostra como o Clear-Content cmdlet limpa o conteúdo de um fluxo de dados alternativo enquanto deixa o fluxo intacto.

O primeiro comando usa o Get-Content cmdlet para obter o conteúdo do Zone.Identifier fluxo no Copy-Script.ps1 arquivo, que foi baixado da Internet.

O segundo comando usa o Clear-Content cmdlet para limpar o conteúdo.

O terceiro comando repete o primeiro. Ele verifica se o conteúdo está limpo, mas o fluxo permanece. Se o fluxo fosse excluído, o comando geraria um erro.

Você pode usar um método como este para limpar o conteúdo de um fluxo de dados alternativo. No entanto, não é a maneira recomendada para eliminar verificações de segurança que bloqueiam arquivos baixados da Internet. Se você verificar se um arquivo baixado é seguro, use o 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

Solicita sua confirmação antes de executar o cmdlet.

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

-Credential

Observação

Esse parâmetro não é suportado por nenhum provedor instalado com o PowerShell. Para representar outro usuário ou elevar suas credenciais ao executar esse 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 uma matriz de cadeia de caracteres, cadeias de caracteres que esse cmdlet omite do caminho para o conteúdo. O valor desse parâmetro qualifica o parâmetro Path . Insira um elemento ou padrão de caminho, como *.txt. Caracteres curinga são permitidos.

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

-Filter

Especifica um filtro no formato ou linguagem do provedor. O valor desse parâmetro qualifica o parâmetro Path . A sintaxe do filtro, incluindo o uso de caracteres curingas, depende do provedor. Os filtros são mais eficientes do que outros parâmetros, porque o provedor os aplica ao recuperar os objetos, em vez de fazer com que o PowerShell filtre os objetos depois que eles são recuperados.

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

-Force

Força o comando a ser executado sem solicitar a confirmação do usuário.

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

-Include

Especifica, como uma matriz de cadeia de caracteres, o conteúdo que esse cmdlet limpa. O valor desse parâmetro qualifica o parâmetro Path . Insira um elemento ou padrão de caminho, como *.txt. Caracteres curinga são permitidos.

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

-LiteralPath

Especifica os caminhos para os itens dos quais o conteúdo é excluído. Ao contrário do parâmetro Path , o valor de LiteralPath é usado exatamente como é digitado. Nenhum caractere é interpretado como caractere curinga. Se o caminho incluir caracteres de escape, coloque-o entre aspas simples ('). Aspas simples dizem ter PowerShell para não interpretar nenhum caractere como sequências de escape.

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

-Path

Especifica os caminhos para os itens dos quais o conteúdo é excluído. Caracteres curinga são permitidos. Os caminhos devem ser caminhos para itens, não para contêineres. Por exemplo, você deve especificar um caminho para um ou mais arquivos, não um caminho para um diretório. Caracteres curinga são permitidos. Esse parâmetro é obrigatório, mas o nome do parâmetro (Path) é opcional.

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

-Stream

Este é um parâmetro dinâmico disponibilizado pelo provedor FileSystem. Esse parâmetro só está disponível no Windows.

Especifica um fluxo de dados alternativo para o conteúdo. Se o fluxo não existir, esse cmdlet o criará. Não há suporte para caracteres curinga.

Você pode usar o Clear-Content cmdlet para alterar o conteúdo de qualquer fluxo de dados alternativo, como Zone.Identifier. No entanto, não recomendamos isso como uma maneira de eliminar as verificações de segurança que bloqueiam arquivos que são baixados da Internet. Se você verificar se um arquivo baixado é seguro, use o Unblock-File cmdlet.

Esse parâmetro foi introduzido no PowerShell 3.0. A partir do PowerShell 7.2, pode limpar o conteúdo de fluxos de dados alternativos de diretórios, Clear-Content bem como arquivos.

Para obter mais informações, consulte about_FileSystem_Provider.

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

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

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

Entradas

None

Não é possível canalizar objetos para esse cmdlet.

Saídas

None

Esse cmdlet não retorna nenhuma saída.

Observações

O PowerShell inclui os seguintes aliases para Clear-Content:

  • Todas as plataformas:
    • clc

Você pode usar Clear-Content com o provedor do Sistema de Arquivos do PowerShell e com outros provedores que manipulam conteúdo. Para limpar itens que não são considerados conteúdo, como itens gerenciados pelos provedores de Certificado do PowerShell ou do Registro, use Clear-Item.

O Clear-Content cmdlet foi projetado para trabalhar com os dados expostos por qualquer provedor. Para listar os provedores disponíveis em sua sessão, digite Get-PsProvider. Para obter mais informações, consulte about_Providers.