Add-Content
Adiciona conteúdo aos itens especificados, como a adição de palavras a um arquivo.
Syntax
Add-Content
[-Path] <string[]>
[-Value] <Object[]>
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-NoNewline]
[-Encoding <Encoding>]
[-AsByteStream]
[-Stream <string>]
[<CommonParameters>]
Add-Content
[-Value] <Object[]>
-LiteralPath <string[]>
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-NoNewline]
[-Encoding <Encoding>]
[-AsByteStream]
[-Stream <string>]
[<CommonParameters>]
Description
O Add-Content
cmdlet acrescenta conteúdo a um item ou arquivo especificado. Você pode especificar o conteúdo, digitando-o no comando ou especificando um objeto que contém o conteúdo.
Se você precisar criar arquivos ou diretórios para os exemplos a seguir, consulte New-Item.
Exemplos
Exemplo 1: Adicionar uma cadeia de caracteres a todos os arquivos de texto com uma exceção
Este exemplo acrescenta um valor aos arquivos de texto no diretório atual, mas exclui arquivos com base no nome do arquivo.
Add-Content -Path .\*.txt -Exclude help* -Value 'End of file'
O parâmetro Path especifica todos os .txt
arquivos no diretório atual, mas o parâmetro Excluir ignora os nomes de arquivo que correspondem ao padrão especificado. O parâmetro Value especifica a cadeia de caracteres de texto gravada nos arquivos.
Exemplo 2: adicionar uma data ao final dos arquivos especificados
Este exemplo acrescenta a data aos arquivos no diretório atual e exibe a data no console do PowerShell.
Add-Content -Path .\DateTimeFile1.log, .\DateTimeFile2.log -Value (Get-Date) -PassThru
Get-Content -Path .\DateTimeFile1.log
Tuesday, May 14, 2019 8:24:27 AM
Tuesday, May 14, 2019 8:24:27 AM
5/14/2019 8:24:27 AM
O Add-Content
cmdlet cria dois novos arquivos no diretório atual. O parâmetro Value contém a saída do Get-Date
cmdlet. O parâmetro PassThru gera o conteúdo adicionado ao pipeline.
Como não há outro cmdlet para receber a saída, ele é exibido no console do PowerShell.
O Get-Content
cmdlet exibe o arquivo atualizado. DateTimeFile1.log
Exemplo 3: adicionar o conteúdo de um arquivo especificado a outro arquivo
Este exemplo obtém o conteúdo de um arquivo e armazena o conteúdo em uma variável. A variável é usada para acrescentar o conteúdo em outro arquivo.
$From = Get-Content -Path .\CopyFromFile.txt
Add-Content -Path .\CopyToFile.txt -Value $From
Get-Content -Path .\CopyToFile.txt
- O
Get-Content
cmdlet obtém o conteúdo eCopyFromFile.txt
armazena o conteúdo na$From
variável. - O
Add-Content
cmdlet atualiza oCopyToFile.txt
arquivo usando o conteúdo da$From
variável. - O
Get-Content
cmdlet exibe CopyToFile.txt.
Exemplo 4: adicionar o conteúdo de um arquivo especificado a outro arquivo usando o pipeline
Este exemplo obtém o conteúdo de um arquivo e o redireciona para o Add-Content
cmdlet.
Get-Content -Path .\CopyFromFile.txt | Add-Content -Path .\CopyToFile.txt
Get-Content -Path .\CopyToFile.txt
O Get-Content
cmdlet obtém o conteúdo de CopyFromFile.txt
. Os resultados são canalizados para o Add-Content
cmdlet, que atualiza o CopyToFile.txt
.
O último Get-Content
cmdlet é CopyToFile.txt
exibido.
Exemplo 5: criar um novo arquivo e copiar conteúdo
Este exemplo cria um novo arquivo e copia o conteúdo de um arquivo existente para o novo arquivo.
Add-Content -Path .\NewFile.txt -Value (Get-Content -Path .\CopyFromFile.txt)
Get-Content -Path .\NewFile.txt
- O
Add-Content
cmdlet usa os parâmetros Caminho e Valor para criar um novo arquivo no diretório atual. - O
Get-Content
cmdlet obtém o conteúdo de um arquivoCopyFromFile.txt
existente e o passa para o parâmetro Value . Os parênteses ao redor doGet-Content
cmdlet garantem que o comando seja concluído antes do início doAdd-Content
comando. - O
Get-Content
cmdlet exibe o conteúdo do novo arquivo.NewFile.txt
Exemplo 6: Adicionar conteúdo a um arquivo somente leitura
Esse comando adiciona um valor ao arquivo mesmo que o atributo de arquivo IsReadOnly esteja definido como True. As etapas para criar um arquivo somente leitura são incluídas no exemplo.
New-Item -Path .\IsReadOnlyTextFile.txt -ItemType File
Set-ItemProperty -Path .\IsReadOnlyTextFile.txt -Name IsReadOnly -Value $True
Get-ChildItem -Path .\IsReadOnlyTextFile.txt
Add-Content -Path .\IsReadOnlyTextFile.txt -Value 'Add value to read-only text file' -Force
Get-Content -Path .\IsReadOnlyTextFile.txt
Mode LastWriteTime Length Name
---- ------------- ------ ----
-ar-- 1/28/2019 13:35 0 IsReadOnlyTextFile.txt
- O
New-Item
cmdlet usa os parâmetros Path e ItemType para criar o arquivoIsReadOnlyTextFile.txt
no diretório atual. - O
Set-ItemProperty
cmdlet usa os parâmetros Nome e Valor para alterar a propriedade IsReadOnly do arquivo para True. - O
Get-ChildItem
cmdlet mostra que o arquivo está vazio (0) e tem o atributo somente leitura (r
). - O
Add-Content
cmdlet usa o parâmetro Path para especificar o arquivo. O parâmetro Value inclui a cadeia de caracteres de texto a acrescentar ao arquivo. O parâmetro Force grava o texto no arquivo somente leitura. - O
Get-Content
cmdlet usa o parâmetro Path para exibir o conteúdo do arquivo.
Para remover o atributo somente leitura, use o Set-ItemProperty
comando com o parâmetro Value definido como False
.
Exemplo 7: usar filtros com Add-Content
Você pode especificar um filtro para o Add-Content
cmdlet. Ao usar filtros para qualificar o parâmetro Path , você precisa incluir um asterisco à direita (*
) para indicar o conteúdo do caminho.
O comando a seguir adiciona a palavra "Concluído" o conteúdo de todos os *.txt
arquivos no C:\Temp
diretório.
Add-Content -Path C:\Temp\* -Filter *.txt -Value "Done"
Parâmetros
-AsByteStream
Especifica que o conteúdo deve ser lido como um fluxo de bytes. Esse parâmetro foi introduzido no PowerShell 6.0.
Um aviso ocorre quando você usa o parâmetro AsByteStream com o parâmetro de codificação . O parâmetro AsByteStream ignora qualquer codificação e a saída é retornada como um fluxo de bytes.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Solicita sua confirmação antes de executar o cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Observação
Esse parâmetro não tem suporte para 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: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Encoding
Especifica o tipo de codificação para o arquivo de destino. O valor padrão é utf8NoBOM
.
A codificação é um parâmetro dinâmico que o provedor FileSystem adiciona ao Add-Content
cmdlet. Esse parâmetro funciona somente em unidades de sistema de arquivos.
Os valores aceitáveis para este parâmetro são os seguintes:
ascii
: usa a codificação para o conjunto de caracteres ASCII (7 bits).bigendianunicode
: codifica no formato UTF-16 usando a ordem de byte big-endian.oem
: usa a codificação padrão para programas MS-DOS e console.unicode
: codifica no formato UTF-16 usando a ordem de byte little-endian.utf7
: codifica no formato UTF-7.utf8
: codifica no formato UTF-8.utf8BOM
: codifica no formato UTF-8 com Marca de Ordem de Byte (BOM)utf8NoBOM
: codifica no formato UTF-8 sem Marca de Ordem de Byte (BOM)utf32
: codifica no formato UTF-32.
A partir do PowerShell 6.2, o parâmetro de codificação também permite IDs numéricas de páginas de código registradas (como -Encoding 1251
) ou nomes de cadeia de caracteres de páginas de código registradas (como -Encoding "windows-1251"
). Para obter mais informações, consulte a documentação do .NET para Encoding.CodePage.
Type: | Encoding |
Accepted values: | ASCII, BigEndianUnicode, OEM, Unicode, UTF7, UTF8, UTF8BOM, UTF8NoBOM, UTF32 |
Position: | Named |
Default value: | UTF8NoBOM |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Exclude
Especifica, como uma matriz de cadeia de caracteres, um item ou itens que esse cmdlet exclui na operação. O valor deste parâmetro qualifica o parâmetro Path. Insira um elemento ou padrão de caminho, como *.txt
. Caracteres curinga são permitidos. O parâmetro Excluir só é eficaz quando o comando inclui o conteúdo de um item, como C:\Windows\*
, em que o caractere curinga especifica o conteúdo do C:\Windows
diretório.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Filter
Especifica um filtro para qualificar o parâmetro Path . O provedor FileSystem é o único provedor do PowerShell instalado que dá suporte ao uso de filtros. Você pode encontrar a sintaxe da linguagem de filtro FileSystem no about_Wildcards. Os filtros são mais eficientes do que outros parâmetros, pois o provedor os aplica quando o cmdlet obtém os objetos em vez de ter o PowerShell filtrar 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
Substitui o atributo somente leitura, permitindo adicionar conteúdo a um arquivo somente leitura. Por exemplo, o Force substituirá o atributo somente leitura ou criar diretórios para concluir um caminho de arquivo, mas não tentará alterar permissões de arquivo.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Include
Especifica, como uma matriz de cadeia de caracteres, um item ou itens que este cmdlet inclui na operação. O valor deste parâmetro qualifica o parâmetro Path. Insira um elemento ou padrão de caminho, como "*.txt"
. Caracteres curinga são permitidos. O parâmetro Include só é eficaz quando o comando inclui o conteúdo de um item, como C:\Windows\*
, em que o caractere curinga especifica o conteúdo do C:\Windows
diretório.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-LiteralPath
Especifica um caminho para um ou mais locais. O valor de LiteralPath é usado exatamente como ele é digitado. Nenhum caractere é interpretado como caractere curinga. Se o caminho incluir caracteres de escape, coloque-o entre aspas simples. As aspas simples dizem ao PowerShell para não interpretar nenhum caractere como sequências de escape.
Para obter mais informações, consulte about_Quoting_Rules.
Type: | String[] |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-NoNewline
Indica que esse cmdlet não adiciona um novo retorno de linha ou carro ao conteúdo.
As representações de cadeia de caracteres dos objetos de entrada são concatenadas para formar a saída. Nenhum espaço ou linhas novas são inseridos entre as cadeias de caracteres de saída. Nenhuma nova linha é adicionada após a última cadeia de caracteres de saída.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PassThru
Retorna um objeto que representa o conteúdo adicionado. Por padrão, este cmdlet não gera saída.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Especifica o caminho para os itens que recebem conteúdo adicional. 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. Se você especificar vários caminhos, use vírgulas para separá-los.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Stream
Especifica um fluxo de dados alternativo para conteúdo. Se o fluxo não existir, esse cmdlet o criará. Não há suporte para caracteres curinga.
O fluxo é um parâmetro dinâmico ao Add-Content
qual o provedor FileSystem adiciona. Esse parâmetro funciona somente em unidades de sistema de arquivos.
Você pode usar o Add-Content
cmdlet para alterar o conteúdo do fluxo de dados alternativo Zone.Identifier . No entanto, não recomendamos isso como uma forma de 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.
Esse parâmetro foi introduzido no PowerShell 3.0.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Value
Especifica o conteúdo a ser adicionado. Digite uma cadeia de caracteres entre aspas, como Esses dados, é apenas para uso interno ou especifique um objeto que contenha conteúdo, como o objeto DateTime que Get-Date
gera.
Você não pode especificar o conteúdo de um arquivo digitando seu caminho, pois o caminho é apenas uma cadeia de caracteres.
Você pode usar um Get-Content
comando para obter o conteúdo e passá-lo para o parâmetro Valor .
Type: | Object[] |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
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
System.Object, System.Management.Automation.PSCredential
Você pode canalizar valores, caminhos ou credenciais para Set-Content
.
Saídas
None or System.String
Quando você usa o parâmetro PassThru , Add-Content
gera um objeto System.String que representa o conteúdo. Caso contrário, este cmdlet não gera nenhuma saída.
Observações
- Quando você canaliza um objeto,
Add-Content
o objeto é convertido em uma cadeia de caracteres antes de ser adicionado ao item. O tipo de objeto determina o formato de cadeia de caracteres, mas o formato pode ser diferente da exibição padrão do objeto. Para controlar o formato da cadeia de caracteres, use os parâmetros de formatação do cmdlet de envio. - Você também pode se referir por seu alias
Add-Content
interno.ac
Para obter mais informações, consulte about_Aliases. - O
Add-Content
cmdlet foi projetado para trabalhar com os dados expostos por qualquer provedor. Para listar os provedores disponíveis em sua sessão, digiteGet-PSProvider
. Para obter mais informações, consulte about_Providers.