Delen via


Set-Item

Hiermee wijzigt u de waarde van een item in de waarde die is opgegeven in de opdracht.

Syntaxis

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

Description

De Set-Item cmdlet wijzigt de waarde van een item, zoals een variabele of registersleutel, in de waarde die is opgegeven in de opdracht.

Voorbeelden

Voorbeeld 1: Een alias maken

Met deze opdracht maakt u een alias van np voor Kladblok.

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

Voorbeeld 2: de waarde van een omgevingsvariabele wijzigen

Met deze opdracht wordt de waarde van de omgevingsvariabele UserRole gewijzigd in Administrator.

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

Voorbeeld 3: De promptfunctie wijzigen

Met deze opdracht wordt de promptfunctie gewijzigd, zodat deze de tijd vóór het pad weergeeft.

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

Voorbeeld 4: Opties instellen voor de promptfunctie

Met deze opdracht stelt u de opties AllScope en ReadOnly in voor de promptfunctie. Deze opdracht maakt gebruik van de dynamische parameter Options van Set-Item. De parameter Opties is alleen beschikbaar Set-Item als u deze gebruikt met de alias - of functieprovider .

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

Parameters

-Confirm

Hiermee wordt u gevraagd om bevestiging voordat u de cmdlet uitvoert.

Type:SwitchParameter
Aliassen:cf
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Credential

Notitie

Deze parameter wordt niet ondersteund door providers die zijn geïnstalleerd met PowerShell. Als u een andere gebruiker wilt imiteren of uw referenties wilt verhogen bij het uitvoeren van deze cmdlet, gebruikt u Invoke-Command.

Type:PSCredential
Position:Named
Default value:Current user
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Exclude

Hiermee geeft u, als een tekenreeksmatrix, een item of items op die door deze cmdlet worden uitgesloten in de bewerking. De waarde van deze parameter komt in aanmerking voor de path-parameter . Voer een padelement of patroon in, zoals *.txt. Jokertekens zijn toegestaan. De parameter Uitsluiten is alleen van kracht wanneer de opdracht de inhoud van een item bevat, zoals C:\Windows\*, waarbij het jokerteken de inhoud van de C:\Windows map aangeeft.

Type:String[]
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:True

-Filter

Hiermee geeft u een filter op om de path-parameter te kwalificeren. De FileSystem-provider is de enige geïnstalleerde PowerShell-provider die ondersteuning biedt voor het gebruik van filters. U vindt de syntaxis voor de bestandssysteemfiltertaal in about_Wildcards. Filters zijn efficiënter dan andere parameters, omdat de provider deze toepast wanneer de cmdlet de objecten ophaalt in plaats van PowerShell de objecten te filteren nadat ze zijn opgehaald.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:True

-Force

Hiermee dwingt u af dat de cmdlet items instelt die anders niet kunnen worden gewijzigd, zoals alleen-lezenalias of variabelen. De cmdlet kan geen constante aliassen of variabelen wijzigen. Implementatie varieert van provider tot provider. Zie about_Providers voor meer informatie. Zelfs als u de parameter Force gebruikt, kan de cmdlet geen beveiligingsbeperkingen overschrijven.

Type:SwitchParameter
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Include

Hiermee geeft u, als tekenreeksmatrix, een item of items op die deze cmdlet in de bewerking bevat. De waarde van deze parameter komt in aanmerking voor de path-parameter . Voer een padelement of patroon in, zoals "*.txt". Jokertekens zijn toegestaan. De parameter Opnemen is alleen van kracht wanneer de opdracht de inhoud van een item bevat, zoals C:\Windows\*, waarbij het jokerteken de inhoud van de C:\Windows map aangeeft.

Type:String[]
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:True

-LiteralPath

Hiermee geeft u een pad naar een of meer locaties. De waarde van LiteralPath wordt exact gebruikt zoals deze is getypt. Er worden geen tekens geïnterpreteerd als jokertekens. Als het pad escapetekens bevat, plaatst u het tussen enkele aanhalingstekens. Enkele aanhalingstekens geven PowerShell aan dat er geen tekens als escapereeksen moeten worden geïnterpreteerd.

Zie about_Quoting_Rules voor meer informatie.

Type:String[]
Aliassen:PSPath
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Options

Dit is een dynamische parameter die beschikbaar wordt gesteld door de alias- en functieproviders. Zie about_Alias_Provider en about_Function_Provider voor meer informatie.

Hiermee geeft u de waarde van de eigenschap Opties van een alias.

Geldige waarden zijn:

  • None: De alias heeft geen beperkingen (standaardwaarde)
  • ReadOnly: De alias kan worden verwijderd, maar kan niet worden gewijzigd zonder de parameter Force te gebruiken
  • Constant: De alias kan niet worden verwijderd of gewijzigd
  • Private: De alias is alleen beschikbaar in het huidige bereik
  • AllScope: De alias wordt gekopieerd naar nieuwe bereiken die worden gemaakt
  • Unspecified: De optie is niet opgegeven
Type:ScopedItemOptions
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-PassThru

Geeft een object door dat het item aan de pijplijn vertegenwoordigt. Deze cmdlet genereert standaard geen uitvoer.

Type:SwitchParameter
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Path

Hiermee geeft u een pad van de locatie van de items. Jokertekens zijn toegestaan.

Type:String[]
Position:0
Default value:None
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren:True

-Type

Dit is een dynamische parameter die beschikbaar wordt gesteld door de registerprovider . De registerprovider en deze parameter zijn alleen beschikbaar in Windows.

Hiermee geeft u het type eigenschap op dat door deze cmdlet wordt toegevoegd. De aanvaardbare waarden voor deze parameter zijn:

  • String: Hiermee geeft u een tekenreeks met null-beëindiging op. Wordt gebruikt voor REG_SZ waarden.
  • ExpandString: Hiermee geeft u een door null beëindigde tekenreeks op die niet-uitgevouwen verwijzingen bevat naar omgevingsvariabelen die worden uitgevouwen wanneer de waarde wordt opgehaald. Wordt gebruikt voor REG_EXPAND_SZ waarden.
  • Binary: Hiermee geeft u binaire gegevens in elke vorm. Wordt gebruikt voor REG_BINARY waarden.
  • DWord: Hiermee geeft u een 32-bits binair getal. Wordt gebruikt voor REG_DWORD waarden.
  • MultiString: Hiermee geeft u een matrix van door null beëindigde tekenreeksen op die zijn beëindigd door twee null-tekens. Wordt gebruikt voor REG_MULTI_SZ waarden.
  • Qword: Hiermee geeft u een 64-bits binair getal. Wordt gebruikt voor REG_QWORD waarden.
  • Unknown: Geeft een niet-ondersteund registergegevenstype aan, zoals REG_RESOURCE_LIST waarden.
Type:RegistryValueKind
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-UseTransaction

Bevat de opdracht in de actieve transactie. Deze parameter is alleen geldig wanneer een transactie wordt uitgevoerd. Zie about_Transactions voor meer informatie.

Type:SwitchParameter
Aliassen:usetx
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Value

Hiermee geeft u een nieuwe waarde voor het item.

Type:Object
Position:1
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-WhatIf

Hiermee wordt weergegeven wat er zou gebeuren als u de cmdlet uitvoert. De cmdlet wordt niet uitgevoerd.

Type:SwitchParameter
Aliassen:wi
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

Invoerwaarden

Object

U kunt een object doorsluisen dat de nieuwe waarde van het item aan deze cmdlet voorstelt.

Uitvoerwaarden

None

Deze cmdlet retourneert standaard geen uitvoer.

Object

Wanneer u de parameter PassThru gebruikt, retourneert deze cmdlet een object dat het item vertegenwoordigt.

Notities

Windows PowerShell bevat de volgende aliassen voor Set-Item:

  • si

  • Set-Item wordt niet ondersteund door de PowerShell FileSystem-provider. Als u de waarden van items in het bestandssysteem wilt wijzigen, gebruikt u de Set-Content cmdlet.

  • Wijzig de gegevens in de registersleutels HKLM: en HKCU:Set-Item wijzigt de gegevens in de waarde (standaard) van een registersleutel.

    • Als u de namen van registersleutels wilt maken en wijzigen, gebruikt u de New-Item en Rename-Item cmdlet.
    • Als u de namen en gegevens in registerwaarden wilt wijzigen, gebruikt u de New-ItemPropertyen Set-ItemPropertyRename-ItemProperty cmdlets.
  • Set-Item is ontworpen om te werken met de gegevens die door elke provider worden weergegeven. Als u de providers wilt weergeven die beschikbaar zijn in uw sessie, typt Get-PsProvideru . Zie about_Providers voor meer informatie.