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]
[-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
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.
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
.
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
Příklad 3: Úprava položky pomocí kanálu
Tyto příkazy ukazují, jak pomocí operátoru kanálu (|
) odeslat položku do Set-ItemProperty
.
První část příkazu používá Get-ChildItem
k získání objektu, který představuje soubor "Weekly.txt".
Příkaz používá operátor kanálu k odeslání objektu souboru do Set-ItemProperty
.
Příkaz Set-ItemProperty
používá parametry Name a Value k určení vlastnosti a její nové hodnoty.
Tento příkaz je ekvivalentní použití InputObject parametr k určení objektu, který Get-ChildItem
získá.
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
Určuje uživatelský účet, který má oprávnění k provedení této akce. Výchozí hodnota je aktuální uživatel.
Zadejte uživatelské jméno, například "User01" nebo "Domain01\User01", nebo zadejte PSCredential objekt, například objekt vygenerovaný rutinou Get-Credential
.
Pokud zadáte uživatelské jméno, zobrazí se výzva k zadání hesla.
Varování
Tento parametr nejsou podporovány žádnými poskytovateli nainstalovanými ve Windows PowerShellu.
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 položky, na kterých rutina nereaguje, a zahrnuje všechny ostatní. Hodnota tohoto parametru kvalifikuje parametr Path. Zadejte prvek cesty nebo vzor, například "*.txt". Jsou povoleny zástupné znaky.
Typ: | String[] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Filter
Určuje filtr ve formátu nebo jazyce poskytovatele. Hodnota tohoto parametru kvalifikuje parametr Path.
Syntaxe filtru, včetně použití zástupných znaků, závisí na poskytovateli. 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ší od zprostředkovatele po zprostředkovatele. 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 pouze ty položky, na kterých rutina funguje, což vylučuje všechny ostatní. Hodnota tohoto parametru kvalifikuje parametr Path. Zadejte prvek cesty nebo vzor, například "*.txt". Jsou povoleny zástupné znaky.
Typ: | String[] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | 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á.
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 vlastnosti položky. Na rozdíl od parametru Path se hodnota LiteralPath 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.
Typ: | String[] |
Aliasy: | PSPath |
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.
Typ: | String[] |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-UseTransaction
Zahrnuje příkaz v aktivní transakci. Tento parametr je platný pouze v případě, že probíhá transakce. Další informace najdete v tématu about_Transactions.
Typ: | SwitchParameter |
Aliasy: | usetx |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
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, System.Management.Automation.PSCustomObject
Tato rutina vygeneruje PSCustomObject objekt, který představuje položku, která byla změněna, a její novou hodnotu vlastnosti, pokud zadáte PassThru parametr. Jinak tato rutina negeneruje žádný výstup.
Poznámky
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.