Out-File
Envia a saída para um ficheiro.
Syntax
Out-File
[-FilePath] <string>
[[-Encoding] <string>]
[-Append]
[-Force]
[-NoClobber]
[-Width <int>]
[-NoNewline]
[-InputObject <psobject>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Out-File
[[-Encoding] <string>]
-LiteralPath <string>
[-Append]
[-Force]
[-NoClobber]
[-Width <int>]
[-NoNewline]
[-InputObject <psobject>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
O Out-File
cmdlet envia a saída para um ficheiro. Quando precisar de especificar parâmetros para a utilização Out-File
de saída em vez do operador de redirecionamento (>
).
Exemplos
Exemplo 1: Enviar saída e criar um ficheiro
Este exemplo mostra como enviar uma lista dos processos do computador local para um ficheiro. Se o ficheiro não existir, Out-File
cria o ficheiro 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 Get-Process
cmdlet obtém a lista de processos em execução no computador local. Os objetos Processo são enviados pelo pipeline para o Out-File
cmdlet. Out-File
utiliza o parâmetro FilePath e cria um ficheiro no diretório atual com o nome Process.txt. O Get-Content
comando obtém conteúdo do ficheiro e apresenta-o na consola do PowerShell.
Exemplo 2: Impedir que um ficheiro existente seja substituído
Este exemplo impede que um ficheiro existente seja substituído. Por predefinição, Out-File
substitui os ficheiros 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 Get-Process
cmdlet obtém a lista de processos em execução no computador local. Os objetos Processo são enviados pelo pipeline para o Out-File
cmdlet. Out-File
utiliza o parâmetro FilePath e tenta escrever num ficheiro no diretório atual com o nome Process.txt. O parâmetro NoClobber impede que o ficheiro seja substituído e apresenta uma mensagem a indicar que o ficheiro já existe.
Exemplo 3: Enviar saída para um ficheiro 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 Get-Process
cmdlet obtém a lista de processos em execução no computador local. Os objetos Processo são armazenados na variável . $Procs
Out-File
utiliza o parâmetro FilePath e cria um ficheiro no diretório atual com o nome Process.txt. O parâmetro InputObject transmite os objetos $Procs
de processo para o ficheiro Process.txt. O parâmetro Codificação converte o resultado em formato ASCII . O parâmetro Width limita cada linha no ficheiro a 50 carateres para que alguns dados possam ser truncados.
Exemplo 4: utilizar um fornecedor e enviar a saída para um ficheiro
Este exemplo mostra como utilizar o Out-File
cmdlet quando não está numa unidade de fornecedor fileSystem . Utilize o Get-PSProvider
cmdlet para ver os fornecedores no seu computador local. Para obter mais informações, veja 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 Set-Location
comando utiliza o parâmetro Caminho para definir a localização atual para o fornecedor Alias:
de registo . O Get-Location
cmdlet apresenta o caminho completo para Alias:
.
Get-ChildItem
envia objetos pelo pipeline para o Out-File
cmdlet. Out-File
utiliza o parâmetro FilePath para especificar o caminho completo e o nome do ficheiro para a saída ,C:\TestDir\AliasNames.txt. O Get-Content
cmdlet utiliza o parâmetro Caminho e apresenta o conteúdo do ficheiro na consola do PowerShell.
Parâmetros
-Append
Adiciona a saída ao fim de um ficheiro existente. Se não for especificada nenhuma Codificação , o cmdlet utiliza a codificação predefinida. Essa codificação pode não corresponder à codificação do ficheiro de destino. Este é o mesmo comportamento que o operador de redirecionamento (>>
).
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Solicita a 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 |
-Encoding
Especifica o tipo de codificação para o ficheiro de destino. O valor predefinido é Unicode.
Os valores aceitáveis para este parâmetro são os seguintes:
- ASCII Utiliza o conjunto de carateres ASCII (7 bits).
- BigEndianUnicode Utiliza UTF-16 com a ordem de bytes big-endian.
- Predefinição Utiliza a codificação que corresponde à página de código ativo do sistema (normalmente ANSI).
- OEM Utiliza a codificação que corresponde à página de código OEM atual do sistema.
- Cadeia O mesmo que Unicode.
- Unicode Utiliza UTF-16 com a ordem de bytes de pequeno-endiano.
- Desconhecido O mesmo que Unicode.
- UTF7 Utiliza UTF-7.
- UTF8 Utiliza UTF-8.
- UTF32 Utiliza UTF-32 com a ordem de bytes de pequeno-endiano.
Type: | String |
Accepted values: | ASCII, BigEndianUnicode, Default, OEM, String, Unicode, Unknown, UTF7, UTF8, UTF32 |
Position: | 1 |
Default value: | Unicode |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FilePath
Especifica o caminho para o ficheiro de saída.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Substitui o atributo só de leitura e substitui um ficheiro só de leitura existente. O parâmetro Force não substitui as restrições de segurança.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Especifica os objetos a escrever no ficheiro. Introduza uma variável que contenha os objetos ou escreva um comando ou expressão que obtenha os objetos.
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-LiteralPath
Especifica o caminho para o ficheiro de saída. O parâmetro LiteralPath é utilizado exatamente como é escrito. Os carateres universais não são aceites. Se o caminho incluir carateres de escape, coloque-o entre aspas. As aspas únicas indicam ao PowerShell para não interpretar os carateres como sequências de escape. Para obter mais informações, veja about_Quoting_Rules.
Type: | String |
Aliases: | PSPath |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-NoClobber
O NoClobber impede que um ficheiro existente seja substituído e apresenta uma mensagem a indicar que o ficheiro já existe. Por predefinição, se existir um ficheiro no caminho especificado, Out-File
substitui o ficheiro sem aviso prévio.
Type: | SwitchParameter |
Aliases: | NoOverwrite |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoNewline
Especifica que o conteúdo escrito no ficheiro não termina com um caráter de nova linha. As representações de cadeias dos objetos de entrada são concatenadas para formar o resultado. Não são inseridos espaços ou linhas novas entre as cadeias de saída. Não é adicionada nenhuma nova linha após a última cadeia de saída.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Apresenta o que aconteceria mediante a execução do cmdlet. O cmdlet não é executado.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Width
Especifica o número de carateres em cada linha de saída. Quaisquer carateres adicionais são truncados, não moldados. Se este parâmetro não for utilizado, a largura é determinada pelas características do anfitrião. A predefinição para a consola do PowerShell é de 80 carateres.
Type: | Int |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Entradas
Pode encaminhar qualquer objeto para Out-File
.
Saídas
None
Out-File
não gera nenhuma saída.
Notas
Os Out
cmdlets não formatam objetos; apenas os compõem e os enviam para o destino de apresentação especificado. Se enviar um objeto não formatado para um Out
cmdlet, o cmdlet envia-o para um cmdlet de formatação antes de o compor.
Para enviar a saída de um comando do PowerShell para o Out-File
cmdlet, utilize o pipeline. Pode armazenar dados numa variável e utilizar o parâmetro InputObject para transmitir dados para o Out-File
cmdlet.
Out-File
envia dados, mas não produz objetos de saída. Se encaminhar a saída de Out-File
para Get-Member
, o Get-Member
cmdlet comunica que não foram especificados objetos.