Compartir a través de


Add-Content

Agrega contenido a los elementos especificados, como agregar palabras a un archivo.

Sintaxis

Path (valor predeterminado)

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>]

LiteralPath

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 cmdlet Add-Content anexa contenido a un elemento o archivo especificados. Puede especificar el contenido escribiendo el contenido en el comando o especificando 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 en el 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 escrita 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 cmdlet Get-Content garantizan que el comando finalice antes de que comience el comando Add-Content. El parámetro Valor 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 utiliza la $From variable y pasa el contenido a Add-Content. El Add-Content cmdlet actualiza el archivo CopyToFile.txt. El cmdlet Get-Content muestra CopyToFile.txt.

Ejemplo 5: Crear 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 cmdlet Add-Content 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 cmdlet Get-Content garantizan que el comando finalice antes de que comience el comando Add-Content. El parámetro Value pasa el contenido al Add-Content que se 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 cmdlet Set-ItemProperty 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 cmdlet Add-Content 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 cmdlet Get-Content usa el parámetro Path para mostrar el contenido del archivo.

Para quitar el atributo de solo lectura, use el comando Set-ItemProperty con el parámetro Value establecido en False.

Parámetros

-Confirm

Le pide confirmación antes de ejecutar el cmdlet.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False
Alias:cf

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Credential

Especifica una cuenta de usuario que tiene 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 de PSCredential, como uno generado por el cmdlet Get-Credential. Si escribe un nombre de usuario, se le pedirá una contraseña.

Advertencia

Este parámetro no es compatible con ningún proveedor instalado con PowerShell.

Propiedades de parámetro

Tipo:PSCredential
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-Encoding

Especifica el tipo de codificación para el 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.
  • valor 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 cmdlet Add-Content. Este parámetro solo funciona en unidades del sistema de archivos.

Propiedades de parámetro

Tipo:FileSystemCmdletProviderEncoding
Valor predeterminado:Default
Valores aceptados:ASCII, BigEndianUnicode, BigEndianUTF32, Byte, Default, OEM, String, Unicode, Unknown, UTF7, UTF8, UTF32
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Exclude

Omite los elementos especificados. El valor de este parámetro define el parámetro Path. Introduzca un elemento o patrón de trazado, como *.txt. Se permiten los caracteres comodín.

Propiedades de parámetro

Tipo:

String[]

Valor predeterminado:None
Admite caracteres comodín:True
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Filter

Especifica un filtro en el formato o idioma del proveedor. El valor de este parámetro define 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.

Propiedades de parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:True
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Force

Invalida el atributo de solo lectura, lo que le permite agregar contenido a un archivo de solo lectura. Por ejemplo, Force invalidará el atributo de solo lectura o creará directorios para completar una ruta de acceso de archivo, pero no intentará cambiar los permisos de archivo.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Include

Agrega solo los elementos especificados. El valor de este parámetro define el parámetro Path. Introduzca un elemento o patrón de trazado, como *.txt. Se permiten los caracteres comodín.

Propiedades de parámetro

Tipo:

String[]

Valor predeterminado:None
Admite caracteres comodín:True
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-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 incluye caracteres de escape, escríbala entre comillas simples. Las comillas simples indican a PowerShell que no interprete ningún carácter como secuencias de escape.

Propiedades de parámetro

Tipo:

String[]

Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:PSPath

Conjuntos de parámetros

LiteralPath
Posición:Named
Obligatorio:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-NoNewline

Indica que este cmdlet no agrega una nueva línea ni un 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.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-PassThru

Devuelve un objeto que representa el contenido agregado. De forma predeterminada, este cmdlet no genera ninguna salida.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes: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 separar las rutas de acceso.

Propiedades de parámetro

Tipo:

String[]

Valor predeterminado:None
Admite caracteres comodín:True
DontShow:False

Conjuntos de parámetros

Path
Posición:0
Obligatorio:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-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 unidades del sistema de archivos.

Puede usar el cmdlet Add-Content para cambiar el contenido del Zone.Identifier flujo de datos alternativo. 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 cmdlet Unblock-File.

Este parámetro se introdujo en PowerShell 3.0.

Propiedades de parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-UseTransaction

Incluye el comando en la transacción activa. Este parámetro solo es válido cuando una transacción está en curso. Para obtener más información, vea about_Transactions.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False
Alias:usetx

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Value

Especifica el contenido que se va a agregar. Escriba una cadena entrecomillada, como Estos datos son solo para uso internoo especifiquen 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, ya que la ruta de acceso es simplemente una cadena. Puede usar un comando Get-Content para obtener el contenido y pasarlo al parámetro Value.

Propiedades de parámetro

Tipo:

Object[]

Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:1
Obligatorio:True
Valor de la canalización:True
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-WhatIf

Muestra lo que sucedería si el cmdlet se ejecuta. El cmdlet no se ejecuta.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False
Alias:Wi

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

CommonParameters

Este cmdlet admite los parámetros comunes: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction y -WarningVariable. Para obtener más información, vea about_CommonParameters.

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 genera un objeto System.String que representa el contenido. De lo contrario, este cmdlet no genera ninguna salida.

Notas

Al canalizar un objeto a Add-Content, el objeto se convierte en una cadena antes de agregarse al elemento. El tipo de objeto determina el formato de cadena, pero el formato puede ser diferente de la presentación predeterminada del objeto. Para controlar el formato de cadena, use los parámetros de formato del cmdlet de envío.

También puede hacer referencia a Add-Content por su alias integrado, ac. Para más información, vea about_Aliases.

El cmdlet Add-Content 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.