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