Freigeben über


Update-List

Fügt Elemente zu und entfernt Elemente aus einem Eigenschaftswert, der eine Auflistung von Objekten enthält.

Syntax

AddRemoveSet (Standard)

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

ReplaceSet

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

Beschreibung

Das Cmdlet Update-List fügt Elemente zu einem Eigenschaftswert eines Objekts hinzu und entfernt Elemente aus diesem und gibt dann das aktualisierte Objekt zurück. Dieses Cmdlet wurde für Eigenschaften entwickelt, die Sammlungen von Objekten enthalten.

Die " hinzufügen" und "Entfernen" Parameter fügen einzelne Elemente hinzu und entfernen sie aus der Auflistung. Der Parameter Replace ersetzt die gesamte Auflistung.

Wenn Sie im Befehl keine Eigenschaft angeben, gibt Update-List ein Objekt zurück, das die Aktualisierung beschreibt, anstatt das Objekt zu aktualisieren. Sie können das Aktualisierungsobjekt an Cmdlets übermitteln, die Objekte ändern, z. B. Set-*-Cmdlets.

Dieses Cmdlet funktioniert nur, wenn die Eigenschaft, die aktualisiert wird, die IList-Schnittstelle unterstützt, die von Update-List verwendet wird. Außerdem müssen alle Set-*-Cmdlets, die ein Update akzeptieren, die IList-Schnittstelle unterstützen. Die Kern-Cmdlets, die mit Windows PowerShell installiert werden, unterstützen diese Schnittstelle nicht. Informationen dazu, ob ein Cmdlet Update-List unterstützt, finden Sie im Hilfethema zu Cmdlets.

Beispiele

Beispiel 1: Hinzufügen und Entfernen von Elementen aus einem Eigenschaftswert

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

Mit diesem Befehl werden A und B hinzugefügt und X und Y aus der Aliases-Eigenschaft eines Postfachs entfernt.

Der Befehl verwendet das Cmdlet Get-Mailbox von Microsoft Exchange Server, um das Postfach abzurufen. Ein Pipelineoperator sendet das Postfachobjekt an das Cmdlet Update-List .

Der Update-List-Befehl verwendet den Property-Parameter, um anzugeben, dass die Aliases-Eigenschaft des Postfachs aktualisiert wird, und verwendet die Parameter Add und Remove, um die Elemente anzugeben, die der Auflistung hinzugefügt und daraus entfernt werden. Die Aliases-Eigenschaft erfüllt die Bedingungen von Update-List, da sie eine Auflistung von Microsoft .NET Framework-Objekten speichert, die über Add - und Remove-Methoden verfügen.

Das Cmdlet Update-List gibt das aktualisierte Postfach zurück, das an das Cmdlet Set-MailBox weitergeleitet wird, das das Postfach ändert.

Beispiel 2: Hinzufügen und Entfernen von Elementen aus einem Eigenschaftswert in einer Variablen

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

Mit diesem Befehl werden A und B zum Wert der Aliases-Eigenschaft eines Postfachs addiert und X und Y entfernt. Dieser Befehl hat die gleiche Wirkung wie der vorherige Befehl, obwohl er ein etwas anderes Format hat.

Der Befehl verwendet das Cmdlet Get-MailBox , um das Postfach abzurufen, und speichert das Postfach in der Variablen $M. Mit diesem Befehl wird der InputObject-Parameter von Update-List verwendet, um das Postfach anzugeben. Der Wert von InputObject ist das Postfach in der Variablen $M. Er verwendet den Property-Parameter , um die Aliases-Eigenschaft anzugeben, und die Add - und Remove-Parameter , um die Elemente anzugeben, die dem Wert von Aliasen hinzugefügt und daraus entfernt werden.

Der Befehl verwendet einen Pipelineoperator (|), um das aktualisierte Postfachobjekt an das Cmdlet Set-Mailbox zu senden, das das Postfach ändert.

Beispiel 3: Hinzufügen und Entfernen von Elementen aus einem Eigenschaftswert

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

Mit diesem Befehl werden A und B zum Wert der Aliases-Eigenschaft eines Postfachs addiert und X und Y entfernt. Dieser Befehl hat die gleiche Wirkung wie die beiden vorherigen Befehle, verwendet jedoch eine andere Prozedur, um die Aufgabe auszuführen.

Anstatt die Aliases-Eigenschaft des Postfachs zu aktualisieren, bevor es an Set-Mailbox gesendet wird, verwendet dieser Befehl Update-List , um ein Objekt zu erstellen, das die Änderung darstellt. Anschließend wird die Änderung an den Alias-Parameter von Set-Mailbox übermittelt.

Der Befehl verwendet das Cmdlet Get-MailBox , um das Postfach abzurufen. Ein Pipelineoperator sendet das Postfachobjekt an das Cmdlet Set-Mailbox , das die Postfächer ändert.

Der Befehl verwendet den Alias-Parameter von Set-Mailbox , um die Aliases-Eigenschaft des Postfachobjekts zu ändern. Der Wert des Parameters Alias ist ein Update-List-Befehl , der ein Objekt erstellt, das die Aktualisierung darstellt. Der Befehl Update-List wird in Klammern gesetzt, um sicherzustellen, dass er ausgeführt wird, bevor der Wert des Parameters Alias ausgewertet wird. Wenn der Befehl Set-Mailbox abgeschlossen ist, wird das Postfach geändert.

Beispiel 4: Ersetzen einer Eigenschaftsauflistung

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

Dieser Befehl verwendet den Replace-Operator von Update-List , um die Auflistung in der Aliases-Eigenschaft des Objekts in $A durch eine neue Auflistung zu ersetzen.

Dieser Befehl verwendet den InputObject-Parameter , der in diesem Fall der Verwendung eines Pipelineoperators zum Übergeben von $A an Update-List entspricht.

Parameter

-Add

Gibt die Eigenschaftswerte an, die der Auflistung hinzugefügt werden sollen. Geben Sie die Werte in der Reihenfolge ein, in der sie in der Auflistung angezeigt werden sollen.

Parametereigenschaften

Typ:

Object[]

Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

AddRemoveSet
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-InputObject

Gibt die zu aktualisierenden Objekte an. Sie können das zu aktualisierende Objekt auch über die Pipeline an Update-List übergeben.

Parametereigenschaften

Typ:PSObject
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:True
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Property

Gibt die Eigenschaft an, die die Auflistung enthält, die aktualisiert wird. Wenn Sie diesen Parameter weglassen, gibt Update-List ein Objekt zurück, das die Änderung darstellt, anstatt das Objekt zu ändern.

Parametereigenschaften

Typ:String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:0
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Remove

Gibt die Eigenschaftswerte an, die aus der Auflistung entfernt werden sollen.

Parametereigenschaften

Typ:

Object[]

Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

AddRemoveSet
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Replace

Gibt eine neue Auflistung an. Dieser Parameter ersetzt alle Elemente in der ursprünglichen Auflistung durch die durch diesen Parameter angegebenen Elemente.

Parametereigenschaften

Typ:

Object[]

Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

ReplaceSet
Position:Named
Obligatorisch:True
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

CommonParameters

Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.

Eingaben

PSObject

Sie können die zu aktualisierenden Objekte über die Pipeline an Update-List übergeben.

Ausgaben

Objects or System.Management.Automation.PSListModifier

Update-List gibt das aktualisierte Objekt oder ein Objekt zurück, das die Aktualisierungsaktion darstellt.