Set-ItemProperty
Vytvoří nebo změní hodnotu vlastnosti položky.
Syntaxe
Set-ItemProperty
[-Path] <string[]>
[-Name] <string>
[-Value] <Object>
[-PassThru]
[-Force]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-ItemProperty
[-Path] <string[]>
-InputObject <psobject>
[-PassThru]
[-Force]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-ItemProperty
[-Name] <string>
[-Value] <Object>
-LiteralPath <string[]>
[-PassThru]
[-Force]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-ItemProperty
-LiteralPath <string[]>
-InputObject <psobject>
[-PassThru]
[-Force]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-ItemProperty
[-Path] <string[]>
[-Name] <string>
[-Value] <Object>
[-PassThru]
[-Force]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
Set-ItemProperty
[-Path] <string[]>
-InputObject <psobject>
[-PassThru]
[-Force]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
Set-ItemProperty
[-Name] <string>
[-Value] <Object>
-LiteralPath <string[]>
[-PassThru]
[-Force]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
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. Další informace naleznete v tématu about_Automatic_Variables.
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 weekly.txt
používá Get-ChildItem
. 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 rutiny vás vyzve k potvrzení.
Typ: | SwitchParameter |
Aliasy: | cf |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | 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.
Typ: | PSCredential |
Position: | Named |
Default value: | Current user |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Exclude
Určuje, jako pole řetězců, položku nebo položky, které tato rutina vylučuje v operaci. 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
.
Typ: | String[] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-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.
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-Force
Vynutí, aby rutina nastavila vlastnost u položek, ke kterým jinak uživatel nemá přístup. Implementace se liší podle poskytovatele. Další informace naleznete v tématu about_Providers.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Include
Určuje, jako pole řetězců, položku nebo položky, které tato rutina 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
.
Typ: | String[] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-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á.
Typ: | PSObject |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-LiteralPath
Určuje cestu k jednomu nebo více umístěním. Hodnota LiteralPath se používá přesně tak, jak je zadána. Žádné znaky nejsou interpretovány jako zástupné znaky. Pokud cesta obsahuje řídicí znaky, uzavřete ji do jednoduchých uvozovek. Jednoduché uvozovky říkají PowerShellu, aby nepřekládaly žádné znaky jako řídicí sekvence.
Další informace najdete v tématu about_Quoting_Rules.
Typ: | String[] |
Aliasy: | PSPath, LP |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Name
Určuje název vlastnosti.
Typ: | String |
Aliasy: | PSProperty |
Position: | 1 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-PassThru
Vrátí objekt, který představuje vlastnost položky. Ve výchozím nastavení tato rutina negeneruje žádný výstup.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Path
Určuje cestu k položkám s vlastností, kterou chcete upravit. Jsou povoleny zástupné znaky.
Typ: | String[] |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | True |
-Type
Jedná se o dynamický parametr zpřístupněný poskytovatelem registru. Poskytovatel registru registru a tento parametr jsou k dispozici pouze ve 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 řetězec ukončený hodnotou null, který obsahuje nepřesazené odkazy na proměnné prostředí, které se rozbalí při načtení hodnoty. Používá se pro REG_EXPAND_SZ hodnoty. -
Binary
: Určuje binární data v libovolné podobě. Používá se pro REG_BINARY hodnoty. -
DWord
: Určuje 32bitové binární číslo. Používá se pro REG_DWORD hodnoty. -
MultiString
: Určuje pole řetězců ukončených hodnotou null ukonč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.
Typ: | RegistryValueKind |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Value
Určuje hodnotu vlastnosti.
Typ: | Object |
Position: | 2 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-WhatIf
Ukazuje, co se stane, když se rutina spustí. Rutina se nespustí.
Typ: | SwitchParameter |
Aliasy: | wi |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
Vstupy
Objekty můžete do této rutiny pipetovat.
Výstupy
None
Ve výchozím nastavení tato rutina nevrací žádný výstup.
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. Pokud chcete zobrazit seznam poskytovatelů dostupných v relaci, zadejte Get-PSProvider
. Další informace naleznete v tématu about_Providers.