Dela via


Update-List

Lägger till objekt i och tar bort objekt från ett egenskapsvärde som innehåller en samling objekt.

Syntax

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

Description

Cmdleten Update-List lägger till objekt i och tar bort objekt från ett egenskapsvärde för ett objekt och returnerar sedan det uppdaterade objektet. Den här cmdleten är utformad för egenskaper som innehåller samlingar med objekt.

Parametrarna Lägg till och ta bort lägger till enskilda objekt i och tar bort dem från samlingen. Parametern Ersätt ersätter hela samlingen.

Om du inte anger en egenskap i kommandot returnerar Update-List ett objekt som beskriver uppdateringen i stället för att uppdatera objektet. Du kan skicka uppdateringsobjektet till cmdletar som ändrar objekt, till exempel Set-* cmdletar.

Den här cmdleten fungerar bara när egenskapen som uppdateras har stöd för det IList-gränssnitt som används av Update-List . Dessutom måste alla Set-* cmdletar som accepterar en uppdatering ha stöd för IList-gränssnittet. De kärn-cmdletar som installeras med Windows PowerShell stöder inte det här gränssnittet. Information om huruvida en cmdlet stöder Uppdateringslista finns i avsnittet cmdlet-hjälp.

Exempel

Exempel 1: Lägga till och ta bort objekt från ett egenskapsvärde

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

Det här kommandot lägger till A och B och tar bort X och Y från egenskapen Alias för en postlåda.

Kommandot använder cmdleten Get-Mailbox från Microsoft Exchange Server för att hämta postlådan. En pipelineoperator skickar postlådeobjektet till cmdleten Update-List .

Kommandot Update-List använder parametern Egenskap för att indikera att egenskapen Alias för postlådan uppdateras och använder parametrarna Lägg till och ta bort för att ange de objekt som läggs till och tas bort från samlingen. Egenskapen Alias uppfyller villkoren för Update-List eftersom den lagrar en samling Microsoft-.NET Framework objekt som har metoderna Lägg till och ta bort.

Cmdleten Update-List returnerar den uppdaterade postlådan, som skickas till cmdleten Set-MailBox , som ändrar postlådan.

Exempel 2: Lägga till och ta bort objekt från ett egenskapsvärde i en variabel

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

Det här kommandot lägger till A och B i värdet för egenskapen Alias för en postlåda och tar bort X och Y. Det här kommandot har samma effekt som föregående kommando, även om det har ett något annorlunda format.

Kommandot använder cmdleten Get-MailBox för att hämta postlådan och sparar postlådan i variabeln $M. Det här kommandot använder parametern InputObject i Update-List för att ange postlådan. Värdet för InputObject är postlådan i variabeln $M. Den använder egenskapsparametern för att ange egenskapen Alias och parametrarna Lägg till och ta bort för att ange de objekt som läggs till och tas bort från värdet för Alias.

Kommandot använder en pipelineoperator (|) för att skicka det uppdaterade postlådeobjektet till cmdleten Set-Mailbox , som ändrar postlådan.

Exempel 3: Lägga till och ta bort objekt från ett egenskapsvärde

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

Det här kommandot lägger till A och B i värdet för egenskapen Alias för en postlåda och tar bort X och Y. Det här kommandot har samma effekt som de två föregående kommandona, men det använder en annan procedur för att utföra uppgiften.

I stället för att uppdatera egenskapen Alias för postlådan innan den skickas till Set-Mailbox använder det här kommandot Update-List för att skapa ett objekt som representerar ändringen. Sedan skickas ändringen till aliasparameternför Set-Mailbox.

Kommandot använder cmdleten Get-MailBox för att hämta postlådan. En pipelineoperator skickar postlådeobjektet till cmdleten Set-Mailbox , som ändrar postlådor.

Kommandot använder aliasparameternför Set-Mailbox för att ändra egenskapen Alias för postlådeobjektet. Värdet för aliasparametern är ett update-list-kommando som skapar ett objekt som representerar uppdateringen. Kommandot Update-List omges av parenteser för att säkerställa att det körs innan värdet för aliasparametern utvärderas. När kommandot Set-Mailbox har slutförts ändras postlådan.

Exempel 4: Ersätt en egenskapssamling

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

Det här kommandot använder operatorn Ersätt för Update-List för att ersätta samlingen i egenskapen Alias för objektet i $A med en ny samling.

Det här kommandot använder parametern InputObject som i det här fallet motsvarar att använda en pipelineoperator för att skicka $A till Update-List.

Parametrar

-Add

Anger de egenskapsvärden som ska läggas till i samlingen. Ange värdena i den ordning som de ska visas i samlingen.

Type:Object[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Anger vilka objekt som ska uppdateras. Du kan också skicka det objekt som ska uppdateras till Update-List.

Type:PSObject
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Property

Anger egenskapen som innehåller samlingen som uppdateras. Om du utelämnar den här parametern returnerar Update-List ett objekt som representerar ändringen i stället för att ändra objektet.

Type:String
Position:0
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Remove

Anger de egenskapsvärden som ska tas bort från samlingen.

Type:Object[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Replace

Anger en ny samling. Den här parametern ersätter alla objekt i den ursprungliga samlingen med de objekt som anges av den här parametern.

Type:Object[]
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

Indata

PSObject

Du kan skicka ut de objekt som ska uppdateras till Update-List.

Utdata

Objects or System.Management.Automation.PSListModifier

Update-List returnerar det uppdaterade objektet eller returnerar ett objekt som representerar uppdateringsåtgärden.