Compartilhar via


Out-File

Envia a saída para um arquivo.

Sintaxe

ByPath (Default)

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

ByLiteralPath

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

Description

O cmdlet Out-File envia a saída para um arquivo. Quando você precisar especificar parâmetros para a saída, use Out-File em vez do operador de redirecionamento (>).

Exemplos

Exemplo 1: Enviar saída e criar um arquivo

Este exemplo mostra como enviar uma lista dos processos do computador local para um arquivo. Se o arquivo não existir, Out-File criará o arquivo no caminho especificado.

Get-Process | Out-File -FilePath .\Process.txt
Get-Content -Path .\Process.txt
 NPM(K)    PM(M)      WS(M)     CPU(s)      Id  SI ProcessName
 ------    -----      -----     ------      --  -- -----------
     29    22.39      35.40      10.98   42764   9 Application
     53    99.04     113.96       0.00   32664   0 CcmExec
     27    96.62     112.43     113.00   17720   9 Code

O cmdlet Get-Process obtém a lista de processos em execução no computador local. Os objetos processo de são enviados pelo pipeline para o cmdlet Out-File. Out-File usa o parâmetro FilePath e cria um arquivo no diretório atual chamado Process.txt. O comando Get-Content obtém conteúdo do arquivo e o exibe no console do PowerShell.

Exemplo 2: impedir que um arquivo existente seja substituído

Este exemplo impede que um arquivo existente seja substituído. Por padrão, Out-File substitui arquivos existentes.

Get-Process | Out-File -FilePath .\Process.txt -NoClobber
Out-File : The file 'C:\Test\Process.txt' already exists.
At line:1 char:15
+ Get-Process | Out-File -FilePath .\Process.txt -NoClobber
+               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

O cmdlet Get-Process obtém a lista de processos em execução no computador local. Os objetos processo de são enviados pelo pipeline para o cmdlet Out-File. Out-File usa o parâmetro FilePath e tenta gravar em um arquivo no diretório atual chamado Process.txt. O parâmetro NoClobber impede que o arquivo seja substituído e exibe uma mensagem de que o arquivo já existe.

Exemplo 3: Enviar saída para um arquivo no formato ASCII

Este exemplo mostra como codificar a saída com um tipo de codificação específico.

$Procs = Get-Process
Out-File -FilePath .\Process.txt -InputObject $Procs -Encoding ASCII -Width 50

O cmdlet Get-Process obtém a lista de processos em execução no computador local. Os objetos processo de são armazenados na variável, $Procs. Out-File usa o parâmetro FilePath e cria um arquivo no diretório atual chamado Process.txt. O parâmetro InputObject passa os objetos de processo em $Procs para o arquivo Process.txt. O parâmetro de Codificação converte a saída em formato ASCII. O parâmetro Width limita cada linha do arquivo a 50 caracteres para que alguns dados possam ser truncados.

Exemplo 4: usar um provedor e enviar saída para um arquivo

Este exemplo mostra como usar o Out-File cmdlet quando você não está em uma unidade de provedor FileSystem . Use o cmdlet Get-PSProvider para exibir os provedores em seu computador local. Para obter mais informações, consulte about_Providers.

PS> Set-Location -Path Alias:

PS> Get-Location

Path
----
Alias:\

PS> Get-ChildItem | Out-File -FilePath C:\TestDir\AliasNames.txt

PS> Get-Content -Path C:\TestDir\AliasNames.txt

CommandType     Name
-----------     ----
Alias           % -> ForEach-Object
Alias           ? -> Where-Object
Alias           ac -> Add-Content
Alias           cat -> Get-Content

O comando Set-Location usa o parâmetro Path para definir o local atual para o provedor de registro Alias:. O cmdlet Get-Location exibe o caminho completo para Alias:. Get-ChildItem envia objetos pelo pipeline para o cmdlet Out-File. Out-File usa o parâmetro FilePath para especificar o caminho completo e o nome do arquivo para a saída, C:\TestDir\AliasNames.txt. O cmdlet Get-Content usa o parâmetro Path e exibe o conteúdo do arquivo no console do PowerShell.

Parâmetros

-Append

Adiciona a saída ao final de um arquivo existente. Se nenhuma codificação for especificada, o cmdlet usará a codificação padrão. Essa codificação pode não corresponder à codificação do arquivo de destino. Esse é o mesmo comportamento do operador de redirecionamento (>>).

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Confirm

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

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:False
Dá suporte a curingas:False
DontShow:False
Aliases:cf

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Encoding

Especifica o tipo de codificação para o arquivo de destino. O valor padrão é Unicode.

Os valores aceitáveis para esse parâmetro são os seguintes:

  • ascii usa conjunto de caracteres ASCII (7 bits).
  • BigEndianUnicode usa UTF-16 com a ordem de bytes big-endian.
  • padrão usa a codificação que corresponde à página de código ativo do sistema (geralmente ANSI).
  • OEM usa a codificação que corresponde à página de código OEM atual do sistema.
  • Corda O mesmo que Unicode.
  • unicode usa UTF-16 com a ordem de byte little-endian.
  • desconhecido igual aoUnicode .
  • UTF7 usa UTF-7.
  • UTF8 usa UTF-8.
  • UTF32 usa UTF-32 com a ordem de bytes little-endian.

Propriedades do parâmetro

Tipo:String
Valor padrão:Unicode
Valores aceitos:ASCII, BigEndianUnicode, Default, OEM, String, Unicode, Unknown, UTF7, UTF8, UTF32
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:1
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-FilePath

Especifica o caminho para o arquivo de saída.

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

ByPath
Cargo:0
Obrigatório:True
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Force

Substitui o atributo somente leitura e substitui um arquivo somente leitura existente. O parâmetro Force não substitui restrições de segurança.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-InputObject

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

Propriedades do parâmetro

Tipo:PSObject
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-LiteralPath

Especifica o caminho para o arquivo de saída. O parâmetro LiteralPath é usado exatamente como é digitado. Caracteres curinga não são aceitos. Se o caminho incluir caracteres de escape, coloque-o entre aspas simples. Aspas simples indicam ao PowerShell que não deve interpretar nenhum caractere como uma sequência de escape. Para mais informações, consulte sobre_Regras_de_Citação.

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False
Aliases:PSPath

Conjuntos de parâmetros

ByLiteralPath
Cargo:Named
Obrigatório:True
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-NoClobber

NoClobber impede que um arquivo existente seja substituído e exibe uma mensagem informando que o arquivo já existe. Por padrão, se houver um arquivo no caminho especificado, Out-File substituirá o arquivo sem aviso.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:None
Dá suporte a curingas:False
DontShow:False
Aliases:NoOverwrite

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-NoNewline

Especifica que o conteúdo gravado no arquivo não termina com um caractere de nova linha. As representações de cadeia de caracteres dos objetos de entrada são concatenadas para formar a saída. Nenhum espaço ou nova linha é inserido entre as cadeias de caracteres de saída. Nenhuma nova linha é adicionada após a última cadeia de caracteres de saída.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-WhatIf

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

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:False
Dá suporte a curingas:False
DontShow:False
Aliases:wi

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Width

Especifica o número de caracteres em cada linha de saída. Quaisquer caracteres adicionais são truncados, não encapsulados. Se este parâmetro não for usado, a largura será determinada pelas características do host. O padrão para o console do PowerShell é de 80 caracteres.

Propriedades do parâmetro

Tipo:Int
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.

Entradas

PSObject

Você pode redirecionar qualquer objeto para Out-File.

Saídas

None

Out-File não gera nenhuma saída.

Observações

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

Para enviar a saída de um comando do PowerShell para o cmdlet Out-File, use o pipeline. Você pode armazenar dados em uma variável e usar o parâmetro InputObject para passar dados para o Out-File cmdlet.

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