Add-Content
Agrega contenido a los elementos especificados (por ejemplo, agrega palabras a un archivo).
Syntax
Add-Content
[-Path] <string[]>
[-Value] <Object[]>
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[-NoNewline]
[-Encoding <FileSystemCmdletProviderEncoding>]
[-Stream <string>]
[<CommonParameters>]
Add-Content
[-Value] <Object[]>
-LiteralPath <string[]>
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[-NoNewline]
[-Encoding <FileSystemCmdletProviderEncoding>]
[-Stream <string>]
[<CommonParameters>]
Description
El Add-Content
cmdlet anexa contenido a un elemento o archivo especificado. Para especificar el contenido, escríbalo en el comando o especifique un objeto que contenga el contenido.
Si necesita crear archivos o directorios para los ejemplos siguientes, consulte New-Item.
Ejemplos
Ejemplo 1: Agregar una cadena a todos los archivos de texto con una excepción
En este ejemplo se anexa un valor a los archivos de texto del directorio actual, pero se excluyen los archivos según su nombre de archivo.
Add-Content -Path .\*.txt -Exclude help* -Value 'End of file'
El Add-Content
cmdlet usa el parámetro Path para especificar todos los archivos .txt del directorio actual. El parámetro Exclude omite los nombres de archivo que coinciden con el patrón especificado. El parámetro Value especifica la cadena de texto que se escribe en los archivos.
Use Get-Content para mostrar el contenido de estos archivos.
Ejemplo 2: Agregar una fecha al final de los archivos especificados
En este ejemplo se anexa la fecha a los archivos del directorio actual y se muestra la fecha en la consola de PowerShell.
Add-Content -Path .\DateTimeFile1.log, .\DateTimeFile2.log -Value (Get-Date) -PassThru
Get-Content -Path .\DateTimeFile1.log
El Add-Content
cmdlet usa los parámetros Path y Value para crear dos archivos nuevos en el directorio actual. El parámetro Value especifica el Get-Date
cmdlet para obtener la fecha y pasa la fecha a Add-Content
. El Add-Content
cmdlet escribe la fecha en cada archivo. El parámetro PassThru pasa un objeto que representa el objeto date. Dado que no hay ningún otro cmdlet para recibir el objeto pasado, se muestra en la consola de PowerShell. El Get-Content
cmdlet muestra el archivo actualizado, DateTimeFile1.log.
Ejemplo 3: Agregar el contenido de un archivo especificado a otro archivo
En este ejemplo se obtiene el contenido de un archivo y se anexa ese contenido a otro archivo.
Add-Content -Path .\CopyToFile.txt -Value (Get-Content -Path .\CopyFromFile.txt)
Get-Content -Path .\CopyToFile.txt
El Add-Content
cmdlet usa el parámetro Path para especificar el nuevo archivo en el directorio actual, CopyToFile.txt. El parámetro Value usa el Get-Content
cmdlet para obtener el contenido del archivo, CopyFromFile.txt. Los paréntesis alrededor del Get-Content
cmdlet garantizan que el comando finaliza antes de que comience el Add-Content
comando. El parámetro Value se pasa a Add-Content
. El Add-Content
cmdlet anexa los datos al archivo CopyToFile.txt. El Get-Content
cmdlet muestra el archivo actualizado, CopyToFile.txt.
Ejemplo 4: Usar una variable para agregar el contenido de un archivo especificado a otro archivo
En este ejemplo se obtiene el contenido de un archivo y se almacena el contenido en una variable. La variable se usa para anexar el contenido a otro archivo.
$From = Get-Content -Path .\CopyFromFile.txt
Add-Content -Path .\CopyToFile.txt -Value $From
Get-Content -Path .\CopyToFile.txt
El Get-Content
cmdlet obtiene el contenido de CopyFromFile.txt y almacena el contenido en la $From
variable . El Add-Content
cmdlet usa el parámetro Path para especificar el archivo CopyToFile.txt en el directorio actual. El parámetro Value usa la $From
variable y pasa el contenido a Add-Content
. El Add-Content
cmdlet actualiza el archivo CopyToFile.txt. El Get-Content
cmdlet muestra CopyToFile.txt.
Ejemplo 5: Create un nuevo archivo y copiar contenido
En este ejemplo se crea un nuevo archivo y se copia el contenido de un archivo existente en el nuevo archivo.
Add-Content -Path .\NewFile.txt -Value (Get-Content -Path .\CopyFromFile.txt)
Get-Content -Path .\NewFile.txt
El Add-Content
cmdlet usa los parámetros Path y Value para crear un nuevo archivo en el directorio actual. El parámetro Value usa el Get-Content
cmdlet para obtener el contenido de un archivo existente, CopyFromFile.txt. Los paréntesis alrededor del Get-Content
cmdlet garantizan que el comando finaliza antes de que comience el Add-Content
comando. El parámetro Value pasa el contenido al Add-Content
que actualiza el archivo NewFile.txt. El Get-Content
cmdlet muestra el contenido del nuevo archivo, NewFile.txt.
Ejemplo 6: Agregar contenido a un archivo de solo lectura
Este comando agrega el valor al archivo incluso si el atributo de archivo IsReadOnly está establecido en True. Los pasos para crear un archivo de solo lectura se incluyen en el ejemplo.
New-Item -Path .\IsReadOnlyTextFile.txt -ItemType File
Set-ItemProperty -Path .\IsReadOnlyTextFile.txt -Name IsReadOnly -Value $True
Get-ChildItem -Path .\IsReadOnlyTextFile.txt
Add-Content -Path .\IsReadOnlyTextFile.txt -Value 'Add value to read-only text file' -Force
Get-Content -Path .\IsReadOnlyTextFile.txt
Mode LastWriteTime Length Name
---- ------------- ------ ----
-ar--- 1/28/2019 13:35 0 IsReadOnlyTextFile.txt
El New-Item
cmdlet usa los parámetros Path y ItemType para crear el archivo IsReadOnlyTextFile.txt en el directorio actual. El Set-ItemProperty
cmdlet usa los parámetros Name y Value para cambiar la propiedad IsReadOnly del archivo a True. El Get-ChildItem
cmdlet muestra que el archivo está vacío (0) y tiene el atributo de solo lectura (r
). El Add-Content
cmdlet usa el parámetro Path para especificar el archivo. El parámetro Value incluye la cadena de texto que se va a anexar al archivo. El parámetro Force escribe el texto en el archivo de solo lectura. El Get-Content
cmdlet usa el parámetro Path para mostrar el contenido del archivo.
Para quitar el atributo de solo lectura, use el Set-ItemProperty
comando con el parámetro Value establecido False
en .
Parámetros
-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 |
-Credential
Especifica una cuenta de usuario con permiso para realizar esta acción. El valor predeterminado es el usuario actual.
Escriba un nombre de usuario, como User01 o Domain01\User01, o escriba un objeto PSCredential , como uno generado por el Get-Credential
cmdlet. Si escribe un nombre de usuario, se le solicitará una contraseña.
Advertencia
Este parámetro no es compatible con ningún proveedor instalado con PowerShell.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Encoding
Especifica el tipo de codificación del archivo de destino. El valor predeterminado es Default.
Los valores aceptables para este parámetro son los siguientes:
- ASCII Usa el juego de caracteres ASCII (7 bits).
- BigEndianUnicode Usa UTF-16 con el orden de bytes big-endian.
- BigEndianUTF32 Usa UTF-32 con el orden de bytes big-endian.
- Byte Codifica un conjunto de caracteres en una secuencia de bytes.
- 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.
La codificación es un parámetro dinámico que el proveedor FileSystem agrega al Add-Content
cmdlet . Este parámetro solo funciona en las unidades del sistema de archivos.
Type: | FileSystemCmdletProviderEncoding |
Accepted values: | ASCII, BigEndianUnicode, BigEndianUTF32, Byte, Default, OEM, String, Unicode, Unknown, UTF7, UTF8, UTF32 |
Position: | Named |
Default value: | Default |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Exclude
Omite los elementos especificados. El valor de este parámetro califica el parámetro Path. Escriba un elemento o patrón de ruta de acceso, como *.txt. Se permiten los caracteres comodín.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Filter
Especifica un filtro en el formato o el lenguaje del proveedor. El valor de este parámetro califica el parámetro Path. La sintaxis del filtro, incluido el uso de caracteres comodín, depende del proveedor. Los filtros son más eficaces que otros parámetros porque el proveedor aplica filtros cuando se recuperan objetos. De lo contrario, PowerShell procesa los filtros después de recuperar los objetos.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Force
Invalida el atributo de solo lectura, lo que permite agregar contenido a un archivo de solo lectura. Por ejemplo, Force invalidará el atributo de sólo lectura o creará directorios para completar una ruta de acceso de archivo, pero no intentará cambiar los permisos de archivo.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Include
Agrega solo los elementos especificados. El valor de este parámetro califica el parámetro Path. Escriba un elemento o patrón de ruta de acceso, como *.txt. Se permiten los caracteres comodín.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-LiteralPath
Especifica la ruta de acceso a los elementos que reciben el contenido adicional. A diferencia de Path, el valor de LiteralPath se usa exactamente como se escribe. Ninguno de los caracteres se interpreta como 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 caracteres como secuencias de escape.
Type: | String[] |
Aliases: | PSPath |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-NoNewline
Indica que este cmdlet no agrega una nueva línea o retorno de carro al contenido.
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 |
-PassThru
Devuelve un objeto que representa el contenido agregado. De forma predeterminada, este cmdlet no genera ningún resultado.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Especifica la ruta de acceso a los elementos que reciben el contenido adicional. Se permiten los caracteres comodín. Si especifica varias rutas de acceso, use comas para separarlas.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Stream
Especifica un flujo de datos alternativo para el contenido. Si la secuencia no existe, este cmdlet lo crea. No se admite el uso de caracteres comodín.
Stream es un parámetro dinámico que el proveedor FileSystem agrega a Add-Content
. Este parámetro solo funciona en las unidades del sistema de archivos.
Puede usar el Add-Content
cmdlet para cambiar el contenido del flujo de datos alternativo Zone.Identifier . Sin embargo, no se recomienda esto como una manera de eliminar las comprobaciones de seguridad que bloquean los archivos que se descargan de Internet. Si comprueba que un archivo descargado es seguro, use el Unblock-File
cmdlet .
Este parámetro se introdujo en PowerShell 3.0.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseTransaction
Incluye el comando en la transacción activa. Este parámetro solo es válido cuando hay una transacción en curso. Para obtener más información, consulte about_Transactions.
Type: | SwitchParameter |
Aliases: | usetx |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Value
Especifica el contenido que se va a agregar. Escriba una cadena entrecomillada, como This data is for internal use only (Estos datos son solo para uso interno) o especifique un objeto que contenga contenido, como el objeto DateTime que Get-Date
genera.
No se puede especificar el contenido de un archivo escribiendo su ruta de acceso, porque la ruta de acceso es simplemente una cadena.
Puede usar un Get-Content
comando para obtener el contenido y pasarlo al parámetro Value .
Type: | Object[] |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
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 |
Entradas
System.Object, System.Management.Automation.PSCredential
Puede canalizar valores, rutas de acceso o credenciales a Set-Content
.
Salidas
None or System.String
Cuando se usa el parámetro PassThru , Add-Content
se genera un objeto System.String que representa el contenido. De lo contrario, este cmdlet no genera resultados.
Notas
Cuando se canaliza un objeto a Add-Content
, el objeto se convierte en una cadena antes de agregarlo al elemento. El tipo de objeto determina el formato de la cadena, que puede ser diferente que la visualización predeterminada del objeto. Para controlar el formato de la cadena, utilice los parámetros de formato del cmdlet del envío.
También puede hacer referencia a Add-Content
mediante su alias integrado, ac
. Para más información, vea about_Aliases.
El Add-Content
cmdlet está diseñado para trabajar con los datos expuestos por cualquier proveedor. Para enumerar los proveedores disponibles en la sesión, escriba Get-PSProvider
. Para obtener más información, consulte about_Providers.