Dela via


Set-SCGuestInfo

Anger värdet som är associerat med en nyckel för ett nyckel/värde-par i ett gästoperativsystem.

Syntax

Set-SCGuestInfo
   [-VM] <VM>
   -KvpMap <Hashtable>
   [<CommonParameters>]
Set-SCGuestInfo
   [-VM] <VM>
   [-Key] <String>
   [[-Value] <String>]
   [<CommonParameters>]

Description

Cmdleten Set-SCGuestInfo anger värdet som är associerat med en nyckel för ett nyckel/värde-par i ett gästoperativsystem.

Exempel

Exempel 1: Ange ett enda nyckel/värde-par

PS C:\> $VM = Get-SCVirtualMachine "VM01" 
PS C:\> Set-SCGuestInfo -VM $VM -Key Key -Value Value

Det första kommandot hämtar det virtuella datorobjektet VM01 och lagrar objektet i variabeln $VM.

Det andra kommandot anger ett nyckel/värde-par för VM01.

Exempel 2: Ange en nyckel till ett värde för ett nyckel/värde-par

PS C:\> Get-SCVirtualMachine -Name "VM01" | Set-SCGuestInfo -Key Microsoft.Lab.Isolation.ServerVersion -Value 1.0.1101

Det här kommandot anger nyckeln till Microsoft.Lab.Isolation.ServerVersion och värdet till 1.0.1101 för den virtuella datorn med namnet VM01. Om nyckeln inte finns skapas den med det angivna värdet. Om nyckeln redan finns skrivs dess värde över med det värde som anges i det här kommandot.

Du kan använda cmdleten Read-SCGuestInfo för att ange nyckeln och returnera dess motsvarande värde.

Exempel 3: Ange flera nyckel/värde-par

PS C:\> $VM = Get-SCVirtualMachine -Name "Win2k8R2"
PS C:\> $ValuesMap  = @{"Key1" = "avalue1"; "Key2IsEmptyString" = "" ; "Key3" = "value3"}
PS C:\> Set-SCGuestInfo -VM $VM -KvpMap $ValuesMap
PS C:\> Read-SCGuestInfo -VM $VM -KvpMap $ValuesMap | Select KvpMap

Det första kommandot hämtar objektet för den virtuella datorn med namnet Win2k8R2 och lagrar objektet i variabeln $VM.

Det andra kommandot skapar en hashtabell med namnet $ValuesMap som innehåller motsvarande nycklar och värden för nyckel-/värdeparen. Värden kan anges till en sträng, en tom sträng eller $Null. Om du anger ett värde till $Null tas nyckeln bort.

Det tredje kommandot anger nyckel/värde-par för den virtuella datorn med namnet Win2k8R2.

Det sista kommandot läser tillbaka nyckel/värde-paren för den virtuella datorn med namnet Win2k8R2.

Exempel 4: Ändra en uppsättning värden för en uppsättning nyckel/värde-par

PS C:\> $VM = Get-SCVirtualMachine -Name "Win2k8R2"
PS C:\> $ValuesMap  = @{"Key1" = "avalue1"; "Key2IsEmptyString" = "" ; "Key3" = "value3"}
PS C:\> Set-SCGuestInfo -VM $VM -KvpMap $ValuesMap
PS C:\> Read-SCGuestInfo -VM $VM -KvpMap $ValuesMap | Select KvpMap
PS C:\> $ValuesMap  = @{"Key2IsEmptyString" = "KeyIsNoLongerEmpty"}
PS C:\> Set-SCGuestInfo -VM $VM -KvpMap $ValuesMap
PS C:\> $ValuesMap  = @{"Key1" = $Null; "Key2IsEmptyString" = $Null; "Key3" = $Null}
PS C:\> Read-SCGuestInfo -VM $VM -KvpMap $ValuesMap | Select KvpMap

Det första kommandot hämtar objektet för den virtuella datorn med namnet Win2k8R2 och lagrar objektet i variabeln $VM.

Det andra kommandot skapar en hashtabell med namnet $ValuesMap som innehåller motsvarande nycklar och värden för nyckel-/värdeparen. Värden kan anges till en sträng, en tom sträng eller $Null. Om du anger ett värde till $Null tas nyckeln bort.

Det tredje kommandot anger nyckel/värde-par för den virtuella datorn med namnet Win2k8R2.

Det fjärde kommandot läser tillbaka nyckel/värde-paren för den virtuella datorn med namnet Win2k8R2.

Det femte kommandot skapar en ny hashtabell där en specifik nyckel ändras till ett annat värde.

Det sjätte kommandot anger det ändrade värdet för den angivna nyckeln i hashtabellen.

De två sista kommandona läser tillbaka nyckel/värde-paren för den virtuella datorn med namnet Win2k8R2, inklusive det ändrade värdet för nyckeln Key2IsEmptyString.

Exempel 5: Ta bort ett nyckel/värde-par med två metoder

PS C:\> $VM = Get-SCVirtualMachine -Name "Win2k8R2"
PS C:\> $ValuesMap  = @{"Key1" = "avalue1"; "Key2" = "avalue2"}
PS C:\> Set-SCGuestInfo -VM $VM -KvpMap $ValuesMap
PS C:\> Read-SCGuestInfo -VM $VM -KvpMap $ValuesMap | Select KvpMap
PS C:\> Set-SCGuestInfo -VM $VM -Key Key1 
PS C:\> $KvpsToDelete  = @{"Key2" = $Null}
PS C:\> Set-SCGuestInfo -VM $VM -KvpMap $KvpsToDelete  
PS C:\> Read-SCGuestInfo -VM $VM -KvpMap $ValuesMap | Select KvpMap

Det första kommandot hämtar objektet för den virtuella datorn med namnet Win2k8R2 och lagrar objektet i variabeln $VM.

De följande tre kommandona skapar två nycklar och deras värden och returnerar dem till konsolen för den virtuella datorn Win2k8R2.

Det femte kommandot tar bort nyckel/värde-paret Key1 genom att anropa Set-SCGuestInfo utan att ange värdeparametern.

De sjätte och sjunde kommandona skapar en ny Hashtable med Null som värde för key Key2. Sedan tas key Key2 bort genom att anropa cmdleten Set-SCGuestInfo .

Det senaste kommandot visar att båda nycklarna som ursprungligen skapades nu tas bort via två separata metoder.

Exempel 6: Ange flera värden där ett värde är tomt

PS C:\> $VM = Get-SCVirtualMachine -Name "VM01"
PS C:\> $ValuesMap3 = @{"VSLM1" = "value1"; "VLSM2" = "value2" ; "VLSM3" = "value3" ; "VLDM4" = ""}
PS C:\> Set-SCGuestInfo -VM $VM -KVPMap $ValuesMap3
PS C:\> Read-SCGuestInfo -VM $VM -KVPMap $ValuesMap3 | Select KVPMap

Det första kommandot hämtar det virtuella datorobjektet VM01 och lagrar objektet i variabeln $VM.

Det andra kommandot skapar en hashtabell med namnet $ValuesMap 3 som innehåller motsvarande nycklar och värden för nyckel-/värdeparen. Värden kan anges till en sträng, en tom sträng eller $Null. Om du anger ett värde till $Null tas nyckeln bort.

Det tredje kommandot anger värdena för de angivna nycklarna i hashtabellen.

Det senaste kommandot läser tillbaka nyckel/värde-paren för den virtuella datorn med namnet VM01.

Exempel 7: Ta bort ett värde och ange ett annat värde som tomt

PS C:\> $VM = Get-SCVirtualMachine -Name "VM01"
PS C:\> $ValuesMap4 = @{"VLSM2" = $Null; "VSLM1" = "" }
PS C:\> Set-SCGuestInfo -VM $VM -KVPMap $ValuesMap4
PS C:\> Read-SCGuestInfo -VM $VM -KVPMap $ValuesMap4 | Select KVPMap

Det första kommandot hämtar det virtuella datorobjektet VM01 och lagrar objektet i variabeln $VM.

Det andra kommandot skapar en hashtabell med namnet $ValuesMap 4 som innehåller motsvarande nycklar och värden för nyckel-/värdeparen. Värden kan anges till en sträng, en tom sträng eller $Null. Om du anger ett värde till $Null tas nyckeln bort.

Det tredje kommandot anger värdena för de angivna nycklarna i hashtabellen.

Det fjärde kommandot tar bort nyckeln VLSM2 och anger nyckeln VSLM1 till tom genom att anropa kommandot Set-SCGuestInfo .

Det senaste kommandot läser tillbaka nyckel/värde-paren för den virtuella datorn med namnet VM01.

Exempel 8: Ange ett värde och ta bort ett annat värde

PS C:\> $VM = Get-SCVirtualMachine -Name "VM01"
PS C:\> $ValuesMap5 = @{"VSLM1" = "data again"; "VLSM3" = $Null }
PS C:\> Set-SCGuestInfo -VM $VM -KVPMap $ValuesMap5
PS C:\> Read-SCGuestInfo -VM $VM -KVPMap $ValuesMap5 | Select KVPMap

Det första kommandot hämtar det virtuella datorobjektet VM01 och lagrar objektet i variabeln $VM.

Det andra kommandot skapar en hashtabell med namnet $ValuesMap 5 som innehåller motsvarande nycklar och värden för nyckel-/värdeparen. Värden kan anges till en sträng, en tom sträng eller $Null. Om du anger ett värde till $Null tas nyckeln bort.

Det fjärde kommandot anger nyckeln VSLM1 till "data igen" och tar bort nyckeln VLSM3 genom att anropa kommandot Set-SCGuestInfo .

Det senaste kommandot läser tillbaka nyckel/värde-paren för den virtuella datorn med namnet VM01.

Exempel 9: Ignorera borttagningen av nycklar som inte finns

PS C:\> $VM = Get-SCVirtualMachine -Name "VM01"
PS C:\> $KeysDoNotExist  = @{"o1ff1" = $Null; "o1ff2" = $Null; "o1ff3" = $Null ; "o1ff4" = $Null }
PS C:\> Set-SCGuestInfo -VM $VM -KVPMap $KeysDoNotExist 
PS C:\> Set-SCGuestInfo -VM $VM -Key "o1ff1"

Det första kommandot hämtar det virtuella datorobjektet VM01 och lagrar objektet i variabeln $VM.

Det andra kommandot skapar en hashtabell med namnet $ValuesMap 5 som innehåller motsvarande nycklar och värden för nyckel-/värdeparen. Om du anger ett värde till $Null tas nyckeln bort.

Det tredje kommandot anger värdena till $Null för de angivna nycklarna i hashtabellen.

Det sista kommandot tar bort alla nycklar i hashtabellen förutom key o1ff1 genom att anropa cmdleten Set-SCGuestInfo .

Parametrar

-Key

Anger nyckeln i ett nyckel/värde-par.

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

-KvpMap

Anger en hash-tabell med nyckel/värde-par som motsvarar de värden som exponeras av Hyper-V.

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

-Value

Anger en sträng som används för att tillskriva ett objekt eller en egenskap.

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

-VM

Anger ett virtuellt datorobjekt.

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

Utdata

String

Den här cmdleten returnerar ett Strängobjekt .