Set-Item

Změní hodnotu položky na hodnotu zadanou v příkazu.

Syntax

Set-Item
   [-Path] <String[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-Item
   -LiteralPath <String[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-Item
   [-Path] <string[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-Options <ScopedItemOptions>]
   [<CommonParameters>]
Set-Item
   [[-Value] <Object>]
   -LiteralPath <string[]>
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-Options <ScopedItemOptions>]
   [<CommonParameters>]
Set-Item
   [-Path] <string[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-Type <RegistryValueKind>]
   [<CommonParameters>]
Set-Item
   [[-Value] <Object>]
   -LiteralPath <string[]>
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-Type <RegistryValueKind>]
   [<CommonParameters>]

Description

Rutina Set-Item změní hodnotu položky, například proměnnou nebo klíč registru, na hodnotu zadanou v příkazu.

Příklady

Příklad 1: Vytvoření aliasu

Tento příkaz vytvoří alias np pro Poznámkový blok.

Set-Item -Path alias:np -Value "c:\windows\notepad.exe"

Příklad 2: Změna hodnoty proměnné prostředí

Tento příkaz změní hodnotu proměnné prostředí UserRole na Správa istrator.

Set-Item -Path env:UserRole -Value "Administrator"

Příklad 3: Úprava funkce výzvy

Tento příkaz změní funkci příkazového řádku tak, aby zobrazovala čas před cestou.

Set-Item -Path function:prompt -Value {'PS '+ (Get-Date -Format t) + " " + (Get-Location) + '> '}

Příklad 4: Nastavení možností pro funkci výzvy

Tento příkaz nastaví možnosti AllScope a ReadOnly pro funkci příkazového řádku. Tento příkaz používá dynamický parametr Options parametru Set-Item. Parametr Options je k dispozici Set-Item pouze v případech, kdy ho použijete se zprostředkovatelem aliasu nebo funkce.

Set-Item -Path function:prompt -Options "AllScope,ReadOnly"

Parametry

-Confirm

Před spuštěním rutiny zobrazí výzvu k potvrzení.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters: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 úroveň přihlašovacích údajů při spuštění této rutiny, použijte Invoke-Command.

Type:PSCredential
Position:Named
Default value:Current user
Required:False
Accept pipeline input:True
Accept wildcard characters: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 element nebo vzor cesty, například *.txt. Jsou povoleny zástupné znaky. Parametr Exclude je účinný pouze v případě, že příkaz obsahuje obsah položky, například C:\Windows\*, kde zástupný znak určuje obsah C:\Windows adresáře.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Filter

Určuje filtr, který má kvalifikovat parametr 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.

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

-Force

Vynutí rutinu nastavit položky, které nelze jinak změnit, například alias jen pro čtení nebo proměnné. Rutina nemůže změnit konstantní aliasy ani proměnné. Implementace se liší od zprostředkovatele po zprostředkovatele. Další informace najdete v tématu about_Providers. I pomocí parametru Force nemůže rutina přepsat omezení zabezpečení.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters: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 element nebo vzor cesty, 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 C:\Windows adresáře.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-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.

Type:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Options

Jedná se o dynamický parametr, který zpřístupnil poskytovatelé aliasů a funkcí. Další informace najdete v tématu about_Alias_Provider a about_Function_Provider.

Určuje hodnotu vlastnosti Options aliasu.

Platné hodnoty jsou:

  • None: Alias nemá žádná omezení (výchozí hodnota)
  • ReadOnly: Alias lze odstranit, ale nejde ho změnit bez použití parametru Force .
  • Constant: Alias nejde odstranit ani změnit.
  • Private: Alias je k dispozici pouze v aktuálním oboru.
  • AllScope: Alias se zkopíruje do všech nově vytvořených oborů.
  • Unspecified: Možnost není zadána.
Type:ScopedItemOptions
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PassThru

Předá objekt, který představuje položku do kanálu. Ve výchozím nastavení tato rutina negeneruje žádný výstup.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Path

Určuje cestu k umístění položek. Jsou povoleny zástupné znaky.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-Type

Toto je dynamický parametr zpřístupněný poskytovatelem registru . Zprostředkovatel registru a tento parametr jsou k dispozici pouze ve Windows.

Určuje typ vlastnosti, kterou tato rutina přidá. Tento parametr přijímá tyto hodnoty:

  • 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 nerozbalené 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 REG_RESOURCE_LIST hodnoty.
Type:RegistryValueKind
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Value

Určuje novou hodnotu položky.

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

-WhatIf

Zobrazuje, co by se stalo při spuštění rutiny. Rutina není spuštěna.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Vstupy

Object

Objekt, který představuje novou hodnotu položky, můžete připojit k této rutině.

Výstupy

None

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

Object

Pokud použijete parametr PassThru , vrátí tato rutina objekt představující položku.

Poznámky

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

  • Všechny platformy:

    • si
  • Set-Item poskytovatel systému souborů PowerShellu nepodporuje. Pokud chcete změnit hodnoty položek v systému souborů, použijte rutinu Set-Content .

  • V jednotkách HKLM: registru a HKCU:Set-Item změní data v hodnotě (Výchozí) klíče registru.

    • Pokud chcete vytvořit a změnit názvy klíčů registru, použijte rutinu a Rename-Item rutinuNew-Item.
    • Pokud chcete změnit názvy a data v hodnotách registru, použijte rutiny New-ItemProperty, Set-ItemPropertya Rename-ItemProperty .
  • Set-Item je navržený tak, aby fungoval s daty vystavenými jakýmkoli poskytovatelem. Pokud chcete zobrazit seznam poskytovatelů dostupných v relaci, zadejte Get-PsProvider. Další informace najdete v tématu about_Providers.