Set-ItemProperty
Skapar eller ändrar värdet för en egenskap för ett objekt.
Syntax
Set-ItemProperty
[-Path] <String[]>
[-Name] <String>
[-Value] <Object>
[-PassThru]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
Set-ItemProperty
[-Path] <String[]>
-InputObject <PSObject>
[-PassThru]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
Set-ItemProperty
-LiteralPath <String[]>
[-Name] <String>
[-Value] <Object>
[-PassThru]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
Set-ItemProperty
-LiteralPath <String[]>
-InputObject <PSObject>
[-PassThru]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
Description
Cmdleten Set-ItemProperty
ändrar värdet för egenskapen för det angivna objektet.
Du kan använda cmdleten för att upprätta eller ändra egenskaperna för objekt.
Du kan till exempel använda Set-ItemProperty
för att ange värdet för egenskapen IsReadOnly för ett filobjekt för att $True
.
Du använder också Set-ItemProperty
för att skapa och ändra registervärden och data.
Du kan till exempel lägga till en ny registerpost i en nyckel och upprätta eller ändra dess värde.
Exempel
Exempel 1: Ange en egenskap för en fil
Det här kommandot anger värdet för egenskapen IsReadOnly för filen "final.doc" till "true". Den använder Path för att ange filen, Namn för att ange namnet på egenskapen och parametern Value för att ange det nya värdet.
Filen är ett System.IO.FileInfo-objekt och IsReadOnly är bara en av dess egenskaper.
Om du vill se alla egenskaper skriver du Get-Item C:\GroupFiles\final.doc | Get-Member -MemberType Property
.
Den $true
automatiska variabeln representerar värdet "TRUE".
Mer information finns i about_Automatic_Variables.
Set-ItemProperty -Path C:\GroupFiles\final.doc -Name IsReadOnly -Value $true
Exempel 2: Skapa en registerpost och ett värde
Det här exemplet visar hur du använder Set-ItemProperty
för att skapa en ny registerpost och tilldela posten ett värde.
Den skapar posten "NoOfEmployees" i nyckeln "ContosoCompany" i nyckeln "HKLM\Software" och anger värdet till 823.
Eftersom registerposter anses vara egenskaper för registernycklarna, som är objekt, använder du Set-ItemProperty
för att skapa registerposter och för att upprätta och ändra deras värden.
Det första kommandot skapar registerposten.
Den använder Path för att ange sökvägen till HKLM:
-enheten och nyckeln "Software\MyCompany".
Kommandot använder Namn för att ange postnamnet och Värde för att ange ett värde.
Det andra kommandot använder cmdleten Get-ItemProperty
för att se den nya registerposten.
Om du använder cmdletarna Get-Item
eller Get-ChildItem
visas inte posterna eftersom de är egenskaper för en nyckel, inte objekt eller underordnade objekt.
Det tredje kommandot ändrar värdet för NoOfEmployees post till 824.
Du kan också använda cmdleten New-ItemProperty
för att skapa registerposten och dess värde och sedan använda Set-ItemProperty
för att ändra värdet.
Om du vill ha mer information om den HKLM:
enheten skriver du Get-Help Get-PSDrive
.
Om du vill ha mer information om hur du använder PowerShell för att hantera registret skriver du Get-Help Registry
.
Set-ItemProperty -Path "HKLM:\Software\ContosoCompany" -Name "NoOfEmployees" -Value 823
Get-ItemProperty -Path "HKLM:\Software\ContosoCompany"
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\contosocompany
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software
PSChildName : contosocompany
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
NoOfLocations : 2
NoOfEmployees : 823
Set-ItemProperty -Path "HKLM:\Software\ContosoCompany" -Name "NoOfEmployees" -Value 824
Get-ItemProperty -Path "HKLM:\Software\ContosoCompany"
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\contosocompany
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software
PSChildName : contosocompany
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
NoOfLocations : 2
NoOfEmployees : 824
Exempel 3: Ändra ett objekt med hjälp av pipelinen
Dessa kommandon visar hur du använder en pipelineoperator (|
) för att skicka ett objekt till Set-ItemProperty
.
Den första delen av kommandot använder Get-ChildItem
för att hämta ett objekt som representerar filen "Weekly.txt".
Kommandot använder en pipelineoperator för att skicka filobjektet till Set-ItemProperty
.
Kommandot Set-ItemProperty
använder parametrarna Name och Value för att ange egenskapen och dess nya värde.
Det här kommandot motsvarar att använda parametern InputObject för att ange det objekt som Get-ChildItem
hämtar.
Get-ChildItem weekly.txt | Set-ItemProperty -Name IsReadOnly -Value $True
Parametrar
-Confirm
Uppmanar dig att bekräfta innan du kör cmdleten.
Typ: | SwitchParameter |
Alias: | cf |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Credential
Anger ett användarkonto som har behörighet att utföra den här åtgärden. Standardvärdet är den aktuella användaren.
Ange ett användarnamn, till exempel "User01" eller "Domain01\User01", eller ange ett PSCredential- objekt, till exempel ett som genereras av Get-Credential
cmdlet.
Om du skriver ett användarnamn uppmanas du att ange ett lösenord.
Varning
Den här parametern stöds inte av några leverantörer som är installerade med Windows PowerShell.
Typ: | PSCredential |
Position: | Named |
Standardvärde: | Current user |
Obligatorisk: | False |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-Exclude
Anger de objekt som cmdleten inte agerar på och innehåller alla andra. Värdet för den här parametern kvalificerar parametern Path. Ange ett sökvägselement eller mönster, till exempel "*.txt". Jokertecken tillåts.
Typ: | String[] |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Filter
Anger ett filter i providerns format eller språk. Värdet för den här parametern kvalificerar parametern Path.
Syntaxen för filtret, inklusive användningen av jokertecken, beror på providern. Filter är effektivare än andra parametrar eftersom providern tillämpar dem när cmdleten hämtar objekten i stället för att Låta PowerShell filtrera objekten när de har hämtats.
Typ: | String |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | True |
-Force
Tvingar cmdleten att ange en egenskap för objekt som annars inte kan nås av användaren. Implementeringen varierar från leverantör till leverantör. Mer information finns i about_Providers.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Include
Anger endast de objekt som cmdleten agerar på, vilket utesluter alla andra. Värdet för den här parametern kvalificerar parametern Path. Ange ett sökvägselement eller mönster, till exempel "*.txt". Jokertecken tillåts.
Typ: | String[] |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-InputObject
Anger det objekt som har de egenskaper som den här cmdleten ändrar. Ange en variabel som innehåller objektet eller ett kommando som hämtar objektet.
Typ: | PSObject |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-LiteralPath
Anger en sökväg för objektegenskapen. Till skillnad från parametern Path används värdet för LiteralPath precis som det skrivs. Inga tecken tolkas som jokertecken. Om sökvägen innehåller escape-tecken omger du den med enkla citattecken. Enkla citattecken gör att PowerShell inte tolkar några tecken som escape-sekvenser.
Typ: | String[] |
Alias: | PSPath |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-Name
Anger namnet på egenskapen.
Typ: | String |
Alias: | PSProperty |
Position: | 1 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-PassThru
Returnerar ett objekt som representerar objektegenskapen. Som standard genererar den här cmdleten inga utdata.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Path
Anger sökvägen till objekten med egenskapen som ska ändras.
Typ: | String[] |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-UseTransaction
Innehåller kommandot i den aktiva transaktionen. Den här parametern är endast giltig när en transaktion pågår. Mer information finns i about_Transactions.
Typ: | SwitchParameter |
Alias: | usetx |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Value
Anger värdet för egenskapen.
Typ: | Object |
Position: | 2 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-WhatIf
Visar vad som skulle hända om cmdleten körs. Cmdleten körs inte.
Typ: | SwitchParameter |
Alias: | wi |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
Indata
Du kan skicka objekt till den här cmdleten.
Utdata
None, System.Management.Automation.PSCustomObject
Den här cmdleten genererar ett PSCustomObject- objekt som representerar objektet som ändrades och dess nya egenskapsvärde, om du anger parametern PassThru. Annars genererar den här cmdleten inga utdata.
Kommentarer
Set-ItemProperty
är utformat för att fungera med data som exponeras av alla leverantörer. Om du vill visa en lista över tillgängliga leverantörer i sessionen skriver du Get-PSProvider
. Mer information finns i about_Providers.