Sdílet prostřednictvím


Set-ItemProperty

Vytvoří nebo změní hodnotu vlastnosti položky.

Syntax

propertyValuePathSet (Default) - All providers

Set-ItemProperty
    [-Path] <string[]>
    [-Name] <string>
    [-Value] <Object>
    [-PassThru]
    [-Force]
    [-Filter <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

propertyPSObjectPathSet - All providers

Set-ItemProperty
    [-Path] <string[]>
    -InputObject <psobject>
    [-PassThru]
    [-Force]
    [-Filter <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

propertyValueLiteralPathSet - All providers

Set-ItemProperty
    [-Name] <string>
    [-Value] <Object>
    -LiteralPath <string[]>
    [-PassThru]
    [-Force]
    [-Filter <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

propertyPSObjectLiteralPathSet - All providers

Set-ItemProperty
    -LiteralPath <string[]>
    -InputObject <psobject>
    [-PassThru]
    [-Force]
    [-Filter <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

propertyValuePathSet (Default) - Registry provider

Set-ItemProperty
    [-Path] <string[]>
    [-Name] <string>
    [-Value] <Object>
    [-PassThru]
    [-Force]
    [-Filter <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-Type <RegistryValueKind>]
    [<CommonParameters>]

propertyPSObjectPathSet - Registry provider

Set-ItemProperty
    [-Path] <string[]>
    -InputObject <psobject>
    [-PassThru]
    [-Force]
    [-Filter <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-Type <RegistryValueKind>]
    [<CommonParameters>]

propertyValueLiteralPathSet - Registry provider

Set-ItemProperty
    [-Name] <string>
    [-Value] <Object>
    -LiteralPath <string[]>
    [-PassThru]
    [-Force]
    [-Filter <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-Type <RegistryValueKind>]
    [<CommonParameters>]

propertyPSObjectLiteralPathSet - Registry provider

Set-ItemProperty
    -LiteralPath <string[]>
    -InputObject <psobject>
    [-PassThru]
    [-Force]
    [-Filter <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-Type <RegistryValueKind>]
    [<CommonParameters>]

Description

Rutina Set-ItemProperty změní hodnotu vlastnosti zadané položky. Pomocí této rutiny můžete vytvořit nebo změnit vlastnosti položek. Pomocí Set-ItemProperty můžete například nastavit hodnotu vlastnosti IsReadOnly objektu souboru na $True.

K vytváření a změnám hodnot a dat registru také používáte Set-ItemProperty. Můžete například přidat novou položku registru do klíče a vytvořit nebo změnit její hodnotu.

Příklady

Příklad 1: Nastavení vlastnosti souboru

Tento příkaz nastaví hodnotu IsReadOnly vlastnost "final.doc" souboru na hodnotu true. Používá Path zadat soubor, Název zadat název vlastnosti a parametr Hodnota zadat novou hodnotu.

Soubor je objekt System.IO.FileInfo a IsReadOnly je jen jednou z jejích vlastností. Chcete-li zobrazit všechny vlastnosti, zadejte Get-Item C:\GroupFiles\final.doc | Get-Member -MemberType Property.

Automatická proměnná $true představuje hodnotu TRUE. Viz about_Automatic_Variablespro více informací.

Set-ItemProperty -Path C:\GroupFiles\final.doc -Name IsReadOnly -Value $true

Příklad 2: Vytvoření položky a hodnoty registru

Tento příklad ukazuje, jak pomocí Set-ItemProperty vytvořit novou položku registru a přiřadit k položce hodnotu. Vytvoří položku NoOfEmployees v klíči ContosoCompany v klíči HKLM\Software a nastaví jeho hodnotu na 823.

Vzhledem k tomu, že položky registru jsou považovány za vlastnosti klíčů registru, což jsou položky, používáte Set-ItemProperty k vytvoření položek registru a k vytvoření a změně jejich hodnot.

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

První příkaz vytvoří položku registru. Používá Path k určení cesty jednotky HKLM: a klíče Software\MyCompany. Příkaz používá Název k zadání názvu položky a Hodnota zadat hodnotu.

Druhý příkaz použije rutinu Get-ItemProperty k zobrazení nové položky registru. Pokud používáte rutiny Get-Item nebo Get-ChildItem, položky se nezobrazí, protože se jedná o vlastnosti klíče, ne položky nebo podřízené položky.

Třetí příkaz změní hodnotu NoOfEmployees položku 824.

Pomocí rutiny New-ItemProperty můžete také vytvořit položku registru a její hodnotu a pak pomocí Set-ItemProperty hodnotu změnit.

Další informace o jednotce HKLM: zadejte Get-Help Get-PSDrive. Další informace o tom, jak pomocí PowerShellu spravovat registr, zadejte Get-Help Registry.

Příklad 3: Úprava položky pomocí kanálu

V tomto příkladu se k získání souboru Get-ChildItem používá weekly.txt. Objekt souboru je předaný do Set-ItemProperty. Příkaz Set-ItemProperty používá parametry Name a Value k určení vlastnosti a její nové hodnoty.

Get-ChildItem weekly.txt | Set-ItemProperty -Name IsReadOnly -Value $True

Parametry

-Confirm

Před spuštěním cmdletu vás vyzve k potvrzení.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False
Aliasy:viz

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Credential

Poznámka:

Tento parametr nejsou podporovány žádnými poskytovateli nainstalovanými v PowerShellu. Pokud chcete zosobnit jiného uživatele nebo zvýšit oprávnění při spuštění této rutiny, použijte Invoke-Command.

Vlastnosti parametru

Typ:PSCredential
Default value:Current user
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-Exclude

Určuje, jako pole řetězců, položku nebo položky, které tento příkaz vylučuje z operace. Hodnota tohoto parametru kvalifikuje parametr Path. Zadejte prvek cesty nebo vzor, například *.txt. Jsou povoleny zástupné znaky. Parametr Exclude je efektivní pouze v případě, že příkaz obsahuje obsah položky, například C:\Windows\*, kde zástupný znak určuje obsah adresáře C:\Windows.

Vlastnosti parametru

Typ:

String[]

Default value:None
Podporuje zástupné znaky:True
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Filter

Určuje filtr pro kvalifikaci parametru Path. Zprostředkovatel FileSystem je jediným nainstalovaným poskytovatelem PowerShellu, který podporuje použití filtrů. Syntaxi jazyka filtru FileSystem najdete v about_Wildcards. Filtry jsou efektivnější než jiné parametry, protože je poskytovatel použije, když rutina získá objekty místo toho, aby objekty po jejich načtení vyfiltroval PowerShell.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:True
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Force

Vynutí, aby rutina nastavila vlastnost u položek, ke kterým jinak uživatel nemá přístup. Implementace se liší podle poskytovatele. Pro více informací viz about_Providers.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Include

Určuje, jako pole řetězců, jednu nebo více položek, které tento cmdlet zahrnuje v operaci. Hodnota tohoto parametru kvalifikuje parametr Path. Zadejte prvek cesty nebo vzor, například "*.txt". Jsou povoleny zástupné znaky. Parametr Include je efektivní pouze v případě, že příkaz obsahuje obsah položky, například C:\Windows\*, kde zástupný znak určuje obsah adresáře C:\Windows.

Vlastnosti parametru

Typ:

String[]

Default value:None
Podporuje zástupné znaky:True
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-InputObject

Určuje objekt, který má vlastnosti, které tato rutina změní. Zadejte proměnnou obsahující objekt nebo příkaz, který objekt získá.

Vlastnosti parametru

Typ:PSObject
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

propertyPSObjectPathSet
Position:Named
Povinné:True
Hodnota z kanálu:True
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
propertyPSObjectLiteralPathSet
Position:Named
Povinné:True
Hodnota z kanálu:True
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-LiteralPath

Určuje cestu k jednomu nebo více místům. Hodnota LiteralPath se používá přesně tak, jak je zadána. Žádný znak není interpretován jako zástupný znak. Pokud cesta obsahuje únikové znaky, uzavřete ji do jednoduchých uvozovek. Jednoduché uvozovky říkají PowerShellu, aby žádné znaky neinterpretoval jako únikové sekvence.

Další informace najdete v about_Quoting_Rules.

Vlastnosti parametru

Typ:

String[]

Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:PSPath, PO

Sady parametrů

propertyValueLiteralPathSet
Position:Named
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
propertyPSObjectLiteralPathSet
Position:Named
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-Name

Určuje název vlastnosti.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:PSProperty

Sady parametrů

propertyValuePathSet
Position:1
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
propertyValueLiteralPathSet
Position:1
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-PassThru

Vrátí objekt, který představuje vlastnost položky. Ve výchozím nastavení tato rutina negeneruje žádný výstup.

Vlastnosti parametru

Typ:SwitchParameter
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Path

Určuje cestu k položkám s vlastností, kterou chcete upravit. Jsou povoleny zástupné znaky.

Vlastnosti parametru

Typ:

String[]

Default value:None
Podporuje zástupné znaky:True
DontShow:False

Sady parametrů

propertyValuePathSet
Position:0
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
propertyPSObjectPathSet
Position:0
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-Type

Jedná se o dynamický parametr zpřístupněný poskytovatelem registru . Poskytovatel registru a tento parametr jsou k dispozici pouze na Windows.

Určuje typ vlastnosti, kterou tato rutina přidá. Přijatelné hodnoty pro tento parametr jsou:

  • String: Určuje řetězec ukončený hodnotou null. Používá se pro REG_SZ hodnoty.
  • ExpandString: Určuje nulovým znakem ukončený řetězec, který obsahuje neexpandované odkazy na proměnné prostředí, které se expandují při načtení hodnoty. Používá se pro hodnoty typu REG_EXPAND_SZ.
  • Binary: Určuje binární data v libovolné podobě. Pro hodnoty REG_BINARY se používá.
  • DWord: Určuje 32bitové binární číslo. Používá se pro hodnoty REG_DWORD.
  • MultiString: Určuje pole řetězců ukončených znakem null a zakončených dvěma znaky null. Používá se pro REG_MULTI_SZ hodnoty.
  • Qword: Určuje 64bitové binární číslo. Používá se pro REG_QWORD hodnoty.
  • Unknown: Označuje nepodporovaný datový typ registru, například hodnoty REG_RESOURCE_LIST.

Vlastnosti parametru

Typ:RegistryValueKind
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-Value

Určuje hodnotu vlastnosti.

Vlastnosti parametru

Typ:Object
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

propertyValuePathSet
Position:2
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
propertyValueLiteralPathSet
Position:2
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-WhatIf

Ukazuje, co se stane, když se příkaz spustí. Příkazový modul nebyl spuštěn.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False
Aliasy:Wi

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

CommonParameters

Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.

Vstupy

PSObject

Objekty můžete předávat tomuto cmdletu.

Výstupy

None

Ve výchozím nastavení tato rutina nevrací žádný výstup.

PSCustomObject

Pokud použijete parametr PassThru, vrátí tato rutina objekt PSCustomObject představující položku, která byla změněna, a její novou hodnotu vlastnosti.

Poznámky

PowerShell obsahuje následující aliasy pro Set-ItemProperty:

  • Všechny platformy:
    • sp

Set-ItemProperty je navržená tak, aby fungovala s daty vystavenými libovolným poskytovatelem. Chcete-li zobrazit seznam poskytovatelů dostupných ve vaší relaci, napište Get-PSProvider. Pro více informací viz about_Providers.