Envia a saída para um arquivo.

Sintaxe

Out-File [-FilePath] <string> [[-Encoding] <string>] [-Append] [-Force] [-InputObject <psobject>] [-NoClobber] [-Width <int>] [-Confirm] [-WhatIf] [<CommonParameters>]

Descrição

O cmdlet Out-File envia a saída para um arquivo. Você pode usar este cmdlet em vez do operador de redirecionamento (>) quando precisar usar seus parâmetros.

Parâmetros

-Append

Adiciona a saída ao final de um arquivo existente, em vez de substituir o conteúdo do arquivo.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-Encoding <string>

Especifica o tipo de codificação de caractere usado no arquivo. Os valores válidos são "Unicode", "UTF7", "UTF8", "UTF32", "ASCII", "BigEndianUnicode", "Default" e "OEM". "Unicode" é o padrão.

"Default" usa a codificação da atual página de código ANSI do sistema.

"OEM" usa o atual identificador da página de código do fabricante original do equipamento para o sistema operacional.

Necessário?

false

Posição?

2

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-FilePath <string>

Especifica o caminho para o arquivo de saída.

Necessário?

true

Posição?

1

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-Force

Permite que o cmdlet substitua um arquivo somente leitura existente. Mesmo usando o parâmetro Force, o cmdlet não pode substituir as restrições de segurança.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-InputObject <psobject>

Especifica os objetos a serem gravados no arquivo. Insira uma variável que contenha os objetos ou digite um comando ou expressão que obtenha os objetos.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

true (ByValue)

Aceitar caracteres curinga?

false

-NoClobber

Não substituirá o conteúdo de um arquivo existente. Por padrão, se existir um arquivo no caminho especificado, o Out-File substituirá o arquivo sem aviso prévio. Se Append e NoClobber forem usados, a saída será acrescentada ao arquivo existente.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-Width <int>

Especifica o número de caracteres em cada linha da saída. Quaisquer caracteres adicionais são truncados, não ajustados. Se você omitir esse parâmetro, a largura será determinada pelas características do host. O padrão do console do Windows PowerShell é 80 (caracteres).

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-Confirm

Solicita confirmação antes da execução do comando.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-WhatIf

Descreve o que aconteceria se você executasse o comando, sem executá-lo de fato.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

<CommonParameters>

Esse cmdlet oferece suporte aos parâmetros comuns: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Para obter mais informações, consulte about_Commonparameters.

Entradas e saídas

O tipo de entrada é o tipo dos objetos que você pode canalizar para o cmdlet. O tipo de retorno é o tipo dos objetos que o cmdlet retorna.

Entradas

System.Management.Automation.PSObject

Você pode canalizar qualquer objeto para Out-File.

Saídas

None

Out-File não gera saída.

Observações

Os cmdlets Out não formatam objetos; eles apenas os processam e os enviam ao destino de exibição especificado. Se você enviar um objeto não formatado a um cmdlet Out, o cmdlet o envia a um cmdlet de formatação antes de renderizá-lo.

Os cmdlets Out não possuem parâmetros para nomes ou caminhos de arquivo. Para enviar dados a um cmdlet que contém o verbo Out (um cmdlet Out), use um operador de pipeline (|) para enviar a saída de um comando do Windows PowerShell ao cmdlet. Você também pode armazenar dados em uma variável e usar o parâmetro InputObject para passar os dados ao cmdlet. Para obter ajuda, consulte os exemplos.

Out-File envia dados, mas não emite qualquer objeto de saída. Se você canalizar a saída de Out-File para Get-Member, Get-Member relatará que nenhum objeto foi especificado.

Exemplo 1

C:\PS>get-process | out-file -filepath C:\Test1\process.txt

Descrição
-----------
Este comando envia uma lista de processos no computador para o arquivo Process.txt. Se o arquivo não existir, Out-File irá criá-lo. Como o nome do parâmetro FilePath é opcional, você pode omiti-lo e enviar o comando equivalente "get-process | outfile C:\Test1\process.txt".






Exemplo 2

C:\PS>get-process | out-file C:\Test1\process.txt -noclobber

Out-File : File C:\Test1\process.txt already exists and NoClobber was specified.
At line:1 char:23
+ get-process | out-file  <<<< process.txt -noclobber

Descrição
-----------
Este comando também envia uma lista de processos para o arquivo Process.txt, mas usa o parâmetro NoClobber, o qual impede que um arquivo existente seja substituído. O output mostra a mensagem de erro que aparece quando o NoClobber é utilizado com um arquivo existente.






Exemplo 3

C:\PS>$a = get-process

C:\PS> out-file -filepath C:\Test1\process.txt -inputobject $a -encoding ASCII -width 50

Descrição
-----------
Esses comandos enviam uma lista de processos no computador para o arquivo Process.txt. O texto é codificado em formato ASCII de forma que possa ser lido por programas de pesquisa como Findstr e Grep. Por padrão, Out-File usa o formato Unicode.

O primeiro comando obtém a lista dos processos e os armazena na variável $a. O segundo comando usa o cmdlet Out-File para enviar a lista ao arquivo Process.txt. 

O comando usa o parâmetro InputObject para especificar que a entrada está na variável $a. Ele usa o parâmetro Encoding para converter a saída no formato ASCII. Além disso, usa o parâmetro Width para limitar cada linha no arquivo a 50 caracteres. Como as linhas da saída são truncadas a 50 caracteres, a coluna na extremidade direita na tabela do processo é omitida.






Exemplo 4

C:\PS>set-location hklm:\software

c:\PS>get-acl mycompany\mykey | out-file -filepath c:\ps\acl.txt

c:\PS>get-acl mycompany\mykey | out-file -filepath filesystem::acl.txt

Descrição
-----------
Esses comandos mostram como usar o cmdlet Out-File quando você não está em uma unidade FileSystem. 

O primeiro comando define o local atual para a chave do Registro HKLM:\Software.

O segundo e o terceiro comandos têm o mesmo efeito. Eles usam o cmdlet Get-Acl para obter o descritor de segurança da subchave do registro MyKey (HKLM\Software\MyCompany\MyKey). Um operador de pipeline passa o resultado para o cmdlet Out-File, que o envia ao arquivo Acl.txt.

Como o Out-File não é compatível com o provedor Registry do Windows PowerShell, você deve especificar o nome da unidade do sistema de arquivos, como "c:", ou o nome do provedor seguido por dois-pontos duplos, "FileSystem::", no valor do parâmetro FilePath. O segundo e o terceiro comandos demonstram esses métodos.






See Also




Sumário