Out-File
Envía los resultados a un archivo.
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
El Out-File
cmdlet envía la salida a un archivo. Cuando necesite especificar parámetros para el uso Out-File
de salida en lugar del operador de redireccionamiento (>
).
Ejemplos
Ejemplo 1: Enviar salida y crear un archivo
En este ejemplo se muestra cómo enviar una lista de los procesos del equipo local a un archivo. Si el archivo no existe, Out-File
crea el archivo en la ruta de acceso especificada.
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
El Get-Process
cmdlet obtiene la lista de procesos que se ejecutan en el equipo local. Los objetos Process se envían a la canalización al Out-File
cmdlet . Out-File
usa el parámetro FilePath y crea un archivo en el directorio actual denominado Process.txt. El Get-Content
comando obtiene contenido del archivo y lo muestra en la consola de PowerShell.
Ejemplo 2: Impedir que se sobrescriba un archivo existente
En este ejemplo se impide que se sobrescriba un archivo existente. De forma predeterminada, Out-File
sobrescribe los archivos 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
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
El Get-Process
cmdlet obtiene la lista de procesos que se ejecutan en el equipo local. Los objetos Process se envían a la canalización al Out-File
cmdlet . Out-File
usa el parámetro FilePath e intenta escribir en un archivo en el directorio actual denominado Process.txt. El parámetro NoClobber impide que el archivo se sobrescriba y muestre un mensaje que indica que el archivo ya existe.
Ejemplo 3: Envío de salida a un archivo en formato ASCII
En este ejemplo se muestra cómo codificar la salida con un tipo de codificación específico.
$Procs = Get-Process
Out-File -FilePath .\Process.txt -InputObject $Procs -Encoding ASCII -Width 50
El Get-Process
cmdlet obtiene la lista de procesos que se ejecutan en el equipo local. Los objetos Process se almacenan en la variable , $Procs
. Out-File
usa el parámetro FilePath y crea un archivo en el directorio actual denominado Process.txt. El parámetro InputObject pasa los objetos de proceso en $Procs
al archivo Process.txt. El parámetro Encoding convierte la salida en formato ASCII . El parámetro Width limita cada línea del archivo a 50 caracteres para que algunos datos se puedan truncar.
Ejemplo 4: Uso de un proveedor y envío de salida a un archivo
En este ejemplo se muestra cómo usar el Out-File
cmdlet cuando no se encuentra en una unidad del proveedor FileSystem . Use el Get-PSProvider
cmdlet para ver los proveedores en el equipo local. Para obtener más información, 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
El Set-Location
comando usa el parámetro Path para establecer la ubicación actual en el proveedor Alias:
del Registro . El Get-Location
cmdlet muestra la ruta de acceso completa para Alias:
.
Get-ChildItem
envía objetos a la canalización al Out-File
cmdlet . Out-File
usa el parámetro FilePath para especificar la ruta de acceso completa y el nombre de archivo de la salida, C:\TestDir\AliasNames.txt. El Get-Content
cmdlet usa el parámetro Path y muestra el contenido del archivo en la consola de PowerShell.
Parámetros
-Append
Agrega la salida al final de un archivo existente. Si no se especifica ninguna codificación , el cmdlet usa la codificación predeterminada. Esa codificación puede no coincidir con la codificación del archivo de destino. Este es el mismo comportamiento que el operador de redireccionamiento (>>
).
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Le solicita su confirmación antes de ejecutar el cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Encoding
Especifica el tipo de codificación del archivo de destino. El valor predeterminado es Unicode.
Los valores aceptables para este parámetro son los siguientes:
- ASCII Usa juego de caracteres ASCII (7 bits).
- BigEndianUnicode Usa UTF-16 con el orden de bytes big-endian.
- Predeterminado Usa la codificación que corresponde a la página de códigos activa del sistema (normalmente ANSI).
- OEM Usa la codificación que corresponde a la página de códigos oem actual del sistema.
- Cadena Igual que Unicode.
- Unicode Usa UTF-16 con el orden de bytes little-endian.
- Desconocido Igual que Unicode.
- UTF7 Usa UTF-7.
- UTF8 Usa UTF-8.
- UTF32 Usa UTF-32 con el orden de bytes little-endian.
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 la ruta de acceso al archivo de salida.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Invalida el atributo de solo lectura y sobrescribe un archivo de solo lectura existente. El parámetro Force no invalida las restricciones de seguridad.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Especifica los objetos que se escribirán en el archivo. Especifique una variable que contenga los objetos, o escriba un comando o una expresión que obtenga los objetos.
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-LiteralPath
Especifica la ruta de acceso al archivo de salida. El parámetro LiteralPath se usa exactamente como se escribe. No se aceptan caracteres comodín. Si la ruta de acceso contiene caracteres de escape, escríbalos entre comillas simples. Las comillas simples indican a PowerShell que no interprete ningún carácter como secuencias de escape. Para obtener más información, consulte about_Quoting_Rules.
Type: | String |
Aliases: | PSPath |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-NoClobber
NoClobber impide que se sobrescriba un archivo existente y muestre un mensaje que indica que el archivo ya existe. De forma predeterminada, si existe un archivo en la ruta de acceso especificada, Out-File
sobrescribe el archivo sin advertencia.
Type: | SwitchParameter |
Aliases: | NoOverwrite |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoNewline
Especifica que el contenido escrito en el archivo no termina con un carácter de nueva línea. Las representaciones de cadena de los objetos de entrada se concatenan para formar la salida. No se insertan espacios ni nuevas líneas entre las cadenas de salida. No se agrega ninguna nueva línea después de la última cadena de salida.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Muestra lo que sucedería si se ejecutara el cmdlet. El cmdlet no se ejecuta.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Width
Especifica el número de caracteres en cada línea del resultado. Los caracteres extra se truncan, no se ajustan. Si no se usa este parámetro, el ancho viene determinado por las características del host. El valor predeterminado para la consola de PowerShell es de 80 caracteres.
Type: | Int |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Entradas
Puede canalizar cualquier objeto a Out-File
.
Salidas
None
Out-File
no genera ninguna salida.
Notas
Los Out
cmdlets no dan formato a objetos; simplemente los representan y los envían al destino de presentación especificado. Si envía un objeto sin formato a un Out
cmdlet, el cmdlet lo envía a un cmdlet de formato antes de representarlo.
Para enviar la salida de un comando de PowerShell al Out-File
cmdlet , use la canalización. Puede almacenar datos en una variable y usar el parámetro InputObject para pasar datos al Out-File
cmdlet .
Out-File
envía datos, pero no genera ningún objeto de salida. Si canaliza la salida de Out-File
a Get-Member
, el Get-Member
cmdlet informa de que no se especificaron objetos.