Compartir a través de


Update-List

Agrega elementos a y quita elementos de un valor de propiedad que contiene una colección de objetos .

Sintaxis

AddRemoveSet (valor predeterminado)

Update-List
    [[-Property] <String>]
    [-Add <Object[]>]
    [-Remove <Object[]>]
    [-InputObject <PSObject>]
    [<CommonParameters>]

ReplaceSet

Update-List
    [[-Property] <String>]
    -Replace <Object[]>
    [-InputObject <PSObject>]
    [<CommonParameters>]

Description

El cmdlet Update-List agrega elementos a y quita elementos de un valor de propiedad de un objeto y, a continuación, devuelve el objeto actualizado. Este cmdlet está diseñado para propiedades que contienen colecciones de objetos.

Los parámetros Add y Remove agregan elementos individuales a la colección y los eliminan de esta. El parámetro Replace reemplaza toda la colección.

Si no especifica una propiedad en el comando, Update-List devuelve un objeto que describe la actualización en lugar de actualizar el objeto. Puede enviar el objeto de actualización a cmdlets que cambian objetos, como cmdlets Set-*.

Este cmdlet solo funciona cuando la propiedad que se está actualizando admite la interfaz IList que Update-List. Además, los cmdlets Set-* que acepten una actualización deben admitir la interfaz IList. Los cmdlets principales que se instalan con Windows PowerShell no admiten esta interfaz. Para determinar si un cmdlet admite Update-List, consulte el tema ayuda del cmdlet.

Ejemplos

Ejemplo 1: Agregar y quitar elementos de un valor de propiedad

PS C:\> Get-MailBox | Update-List -Property aliases -Add "A","B" -Remove "X","Y" | Set-MailBox

Este comando agrega A y B y quita X e Y de la propiedad Aliases de un buzón.

El comando usa el cmdlet Get-Mailbox de Microsoft Exchange Server para obtener el buzón. Un operador de canalización envía el objeto mailbox al cmdlet Update-List.

El comando Update-List usa el parámetro Property para indicar que se está actualizando la propiedad Aliases del buzón y usa el Agregar y Quitar parámetros para especificar los elementos que se van a agregar y quitar de la colección. La propiedad Aliases cumple las condiciones de Update-List, porque almacena una colección de objetos de Microsoft .NET Framework que tienen métodos Add y Remove.

El cmdlet Update-List devuelve el buzón actualizado, que se canaliza al cmdlet Set-MailBox, que cambia el buzón.

Ejemplo 2: Agregar y quitar elementos de un valor de propiedad en una variable

PS C:\> $M = Get-MailBox
PS C:\> Update-List -InputObject $M -Property aliases -Add "A","B" -Remove "X", "Y" | Set-MailBox

Este comando agrega A y B al valor de la propiedad Aliases de un buzón y quita X e Y. Este comando tiene el mismo efecto que el comando anterior, aunque tiene un formato ligeramente diferente.

El comando usa el cmdlet Get-MailBox para obtener el buzón y guarda el buzón en la variable $M. Este comando usa el parámetro InputObject de Update-List para especificar el buzón. El valor de inputObject es el buzón de la variable $M. Usa el parámetro Property para especificar la propiedad Aliases y el Add y Remove parámetros para especificar los elementos que se agregan y quitan del valor de Alias.

El comando usa un operador de canalización (|) para enviar el objeto de buzón actualizado al cmdlet Set-Mailbox, que cambia el buzón.

Ejemplo 3: Agregar y quitar elementos de un valor de propiedad

PS C:\> Get-MailBox | Set-MailBox -Alias (Update-List -Add "A", "B" -Remove "X","Y")

Este comando agrega A y B al valor de la propiedad Aliases de un buzón y quita X e Y. Este comando tiene el mismo efecto que los dos comandos anteriores, pero usa un procedimiento diferente para realizar la tarea.

En lugar de actualizar la propiedad Aliases del buzón antes de enviarlo a Set-Mailbox, este comando usa Update-List para crear un objeto que represente el cambio. A continuación, envía el cambio al parámetro alias de de Set-Mailbox.

El comando usa el cmdlet Get-MailBox para obtener el buzón. Un operador de canalización envía el objeto mailbox al cmdlet Set-Mailbox , que cambia los buzones.

El comando usa el parámetro alias de de Set-Mailbox para cambiar la propiedad Aliases del objeto mailbox. El valor del parámetro Alias es un comando Update-List que crea un objeto que representa la actualización. El comando Update-List se incluye entre paréntesis para asegurarse de que se ejecuta antes de evaluar el valor del parámetro Alias de . Cuando se completa el comando Set-Mailbox, se cambia el buzón.

Ejemplo 4: Reemplazar una colección de propiedades

PS C:\> Update-List -InputObject $A -Property aliases -Replace "A", "B" | Set-MailBox

Este comando usa el operador Replace de Update-List para reemplazar la colección en la propiedad Aliases del objeto en $A por una nueva colección.

Este comando usa el parámetro InputObject que, en este caso, equivale a usar un operador de canalización para pasar $A a Update-List.

Parámetros

-Add

Especifica los valores de propiedad que se van a agregar a la colección. Escriba los valores en el orden en que deben aparecer en la colección.

Propiedades de parámetro

Tipo:

Object[]

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

Conjuntos de parámetros

AddRemoveSet
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

-InputObject

Especifica los objetos que se van a actualizar. También puede canalizar el objeto que se va a actualizar a Update-List.

Propiedades de parámetro

Tipo:PSObject
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:True
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Property

Especifica la propiedad que contiene la colección que se está actualizando. Si omite este parámetro, Update-List devuelve un objeto que representa el cambio en lugar de cambiar el objeto.

Propiedades de parámetro

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

Conjuntos de parámetros

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

-Remove

Especifica los valores de propiedad que se van a quitar de la colección.

Propiedades de parámetro

Tipo:

Object[]

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

Conjuntos de parámetros

AddRemoveSet
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

-Replace

Especifica una nueva colección. Este parámetro reemplaza todos los elementos de la colección original por los elementos especificados por este parámetro.

Propiedades de parámetro

Tipo:

Object[]

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

Conjuntos de parámetros

ReplaceSet
Posición:Named
Obligatorio:True
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

PSObject

Puede canalizar los objetos que se van a actualizar a Update-List.

Salidas

Objects or System.Management.Automation.PSListModifier

Update-List devuelve el objeto actualizado o devuelve un objeto que representa la acción de actualización.