Delen via


Set-Item

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

Syntaxis

Path (Default) - All providers

Set-Item
    [-Path] <String[]>
    [[-Value] <Object>]
    [-Force]
    [-PassThru]
    [-Filter <String>]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

LiteralPath - All providers

Set-Item
    [[-Value] <Object>]
    -LiteralPath <String[]>
    [-Force]
    [-PassThru]
    [-Filter <String>]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Path (Default) - Alias and Function providers

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

LiteralPath - Alias and Function providers

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

Path (Default) - Registry provider

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

LiteralPath - Registry provider

Set-Item
    [[-Value] <Object>]
    -LiteralPath <string[]>
    [-Force]
    [-PassThru]
    [-Filter <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-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 voor de promptfunctie in. Deze opdracht maakt gebruik van de Opties dynamische parameter van Set-Item. De parameter Options is alleen beschikbaar in Set-Item wanneer u deze gebruikt met de provider Alias of Functie.

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

Parameters

-Confirm

Voordat u de cmdlet uitvoert, vraagt het systeem om bevestiging.

Parametereigenschappen

Type:SwitchParameter
Default value:False
Ondersteunt jokertekens:False
DontShow:False
Aliassen:Cf

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Credential

Opmerking

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

Parametereigenschappen

Type:PSCredential
Default value:Current user
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False

-Exclude

Hiermee specificeert u, als een tekenreeks, één of meerdere items die door deze cmdlet worden uitgesloten van de bewerking. De waarde van deze parameter komt in aanmerking voor de parameter Path. 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.

Parametereigenschappen

Type:

String[]

Default value:None
Ondersteunt jokertekens:True
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Filter

Hiermee geeft u een filter op om de parameter Path te kwalificeren. De FileSystem-provider is de enige geïnstalleerde PowerShell-provider die het gebruik van filters ondersteunt. U kunt de syntaxis voor de FileSystem filtertaal vinden 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.

Parametereigenschappen

Type:String
Default value:None
Ondersteunt jokertekens:True
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Force

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

Parametereigenschappen

Type:SwitchParameter
Default value:False
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Include

Hiermee specificeert u, in de vorm van een tekenreeksarray, een item of items die deze cmdlet bij de bewerking betrekt. De waarde van deze parameter komt in aanmerking voor de parameter Path. 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.

Parametereigenschappen

Type:

String[]

Default value:None
Ondersteunt jokertekens:True
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-LiteralPath

Specificeert 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 escape-tekens bevat, zet het dan tussen enkele aanhalingstekens. Enkele aanhalingstekens zorgen ervoor dat PowerShell geen tekens als escapesequenties interpreteert.

Zie about_Quoting_Rulesvoor meer informatie.

Parametereigenschappen

Type:

String[]

Default value:None
Ondersteunt jokertekens:False
DontShow:False
Aliassen:PSPath, LP

Parametersets

LiteralPath
Position:Named
Verplicht:True
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False

-Options

Dit is een dynamische parameter die beschikbaar wordt gesteld door de Alias en Function providers. Zie about_Alias_Provider en about_Function_Providervoor meer informatie.

Hiermee geeft u de waarde op van de eigenschap Options 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 elke nieuwe scope die wordt gemaakt
  • Unspecified: de optie is niet opgegeven

Parametereigenschappen

Type:ScopedItemOptions
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-PassThru

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

Parametereigenschappen

Type:SwitchParameter
Default value:False
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Path

Specificeert het pad naar de locatie van de items. Jokertekens zijn toegestaan.

Parametereigenschappen

Type:

String[]

Default value:None
Ondersteunt jokertekens:True
DontShow:False

Parametersets

Path
Position:0
Verplicht:True
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False

-Type

Dit is een dynamische parameter die beschikbaar wordt gesteld door de Registry provider. De Register--provider en deze parameter zijn alleen beschikbaar in Windows.

Hiermee geeft u het type eigenschap op dat door deze cmdlet wordt toegevoegd. De acceptabele 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 tekenreeks met null-beëindiging 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 op. Wordt gebruikt voor REG_BINARY waarden.
  • DWord: hiermee geeft u een 32-bits binair getal op. Wordt gebruikt voor REG_DWORD waarden.
  • MultiString: Hiermee specificeert u een array van null-beëindigde tekenreeksen, afgesloten met twee null-tekens. Wordt gebruikt voor REG_MULTI_SZ waarden.
  • Qword: hiermee geeft u een 64-bits binair getal op. Wordt gebruikt voor REG_QWORD waarden.
  • Unknown: geeft een niet-ondersteund registergegevenstype aan, zoals REG_RESOURCE_LIST waarden.

Parametereigenschappen

Type:RegistryValueKind
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False

-Value

Hiermee geeft u een nieuwe waarde voor het item.

Parametereigenschappen

Type:Object
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:1
Verplicht:False
Waarde uit pijplijn:True
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False

-WhatIf

Toont wat er zou gebeuren wanneer de cmdlet wordt uitgevoerd. De cmdlet wordt niet uitgevoerd.

Parametereigenschappen

Type:SwitchParameter
Default value:False
Ondersteunt jokertekens:False
DontShow:False
Aliassen:Wi

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

CommonParameters

Deze cmdlet ondersteunt de algemene parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction en -WarningVariable. Zie about_CommonParametersvoor meer informatie.

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

PowerShell bevat de volgende aliassen voor Set-Item:

  • Alle platforms:

    • 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 cmdlet Set-Content.

  • In de registerstations, HKLM: en HKCU:, Set-Item de gegevens wijzigen in de waarde (standaard) van een registersleutel.

    • Als u de namen van registersleutels wilt maken en wijzigen, gebruikt u de cmdlet New-Item en Rename-Item.
    • Als u de namen en gegevens in registerwaarden wilt wijzigen, gebruikt u de cmdlets New-ItemProperty, Set-ItemPropertyen Rename-ItemProperty.
  • 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 u Get-PSProvider. Zie about_Providersvoor meer informatie.