Set-Item

Ändrar värdet för ett objekt till det värde som anges i kommandot.

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

Cmdleten Set-Item ändrar värdet för ett objekt, till exempel en variabel eller registernyckel, till det värde som anges i kommandot.

Exempel

Exempel 1: Skapa ett alias

Det här kommandot skapar ett alias för np för Anteckningar.

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

Exempel 2: Ändra värdet för en miljövariabel

Det här kommandot ändrar värdet för miljövariabeln UserRole till Administratör.

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

Exempel 3: Ändra promptfunktionen

Det här kommandot ändrar promptfunktionen så att den visar tiden före sökvägen.

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

Exempel 4: Ange alternativ för din promptfunktion

Det här kommandot anger alternativen AllScope och ReadOnly för promptfunktionen. Det här kommandot använder den dynamiska parametern Alternativ för Set-Item. Parametern Alternativ är endast tillgänglig i Set-Item när du använder den med alias- eller funktionsprovidern.

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

Parametrar

-Confirm

Uppmanar dig att bekräfta innan du kör cmdleten.

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

-Credential

Kommentar

Den här parametern stöds inte av några leverantörer som är installerade med PowerShell. Om du vill personifiera en annan användare eller höja dina autentiseringsuppgifter när du kör den här cmdleten använder du Invoke-Command.

Type:PSCredential
Position:Named
Default value:Current user
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Exclude

Anger, som en strängmatris, ett objekt eller objekt som den här cmdleten exkluderar i åtgärden. Värdet för den här parametern kvalificerar parametern Path . Ange ett sökvägselement eller mönster, till exempel *.txt. Jokertecken tillåts. Parametern Exkludera gäller endast när kommandot innehåller innehållet i ett objekt, till exempel C:\Windows\*, där jokertecknet anger innehållet i C:\Windows katalogen.

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

-Filter

Anger ett filter för att kvalificera parametern Sökväg . FileSystem-providern är den enda installerade PowerShell-providern som stöder användning av filter. Du hittar syntaxen för filterspråket FileSystem i about_Wildcards. Filter är effektivare än andra parametrar eftersom providern tillämpar dem när cmdleten hämtar objekten i stället för att Låta PowerShell filtrera objekten när de har hämtats.

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

-Force

Tvingar cmdleten att ange objekt som annars inte kan ändras, till exempel skrivskyddat alias eller variabler. Cmdleten kan inte ändra konstanta alias eller variabler. Implementeringen varierar från leverantör till leverantör. Mer information finns i about_Providers. Även med hjälp av force-parametern kan cmdleten inte åsidosätta säkerhetsbegränsningar.

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

-Include

Anger, som en strängmatris, ett objekt eller objekt som den här cmdleten innehåller i åtgärden. Värdet för den här parametern kvalificerar parametern Path . Ange ett sökvägselement eller mönster, till exempel "*.txt". Jokertecken tillåts. Parametern Include är endast effektiv när kommandot innehåller innehållet i ett objekt, till exempel C:\Windows\*, där jokertecknet anger innehållet i C:\Windows katalogen.

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

-LiteralPath

Anger en sökväg till en eller flera platser. Värdet för LiteralPath används exakt som det skrivs. Inga tecken tolkas som jokertecken. Om sökvägen innehåller escape-tecken omger du den med enkla citattecken. Enkla citattecken gör att PowerShell inte tolkar några tecken som escape-sekvenser.

Mer information finns i about_Quoting_Rules.

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

-Options

Det här är en dynamisk parameter som görs tillgänglig av alias- och funktionsprovidrar. Mer information finns i about_Alias_Provider och about_Function_Provider.

Anger värdet för egenskapen Alternativ för ett alias.

Giltiga värden är:

  • None: Aliaset har inga begränsningar (standardvärde)
  • ReadOnly: Aliaset kan tas bort men kan inte ändras utan att använda force-parametern
  • Constant: Aliaset kan inte tas bort eller ändras
  • Private: Aliaset är endast tillgängligt i det aktuella omfånget
  • AllScope: Aliaset kopieras till alla nya omfång som skapas
  • Unspecified: Alternativet har inte angetts
Type:ScopedItemOptions
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PassThru

Skickar ett objekt som representerar objektet till pipelinen. Som standard genererar den här cmdleten inga utdata.

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

-Path

Anger en sökväg för objektens plats. Jokertecken tillåts.

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

-Type

Det här är en dynamisk parameter som görs tillgänglig av registerprovidern . Registerprovidern och den här parametern är endast tillgängliga i Windows.

Anger vilken typ av egenskap som den här cmdleten lägger till. De acceptabla värdena för den här parametern är:

  • String: Anger en null-avslutad sträng. Används för REG_SZ värden.
  • ExpandString: Anger en null-avslutad sträng som innehåller oexpandererade referenser till miljövariabler som expanderas när värdet hämtas. Används för REG_EXPAND_SZ värden.
  • Binary: Anger binära data i valfri form. Används för REG_BINARY värden.
  • DWord: Anger ett 32-bitars binärt tal. Används för REG_DWORD värden.
  • MultiString: Anger en matris med null-avslutade strängar som avslutas med två null-tecken. Används för REG_MULTI_SZ värden.
  • Qword: Anger ett 64-bitars binärt tal. Används för REG_QWORD värden.
  • Unknown: Anger en registerdatatyp som inte stöds, till exempel REG_RESOURCE_LIST värden.
Type:RegistryValueKind
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Value

Anger ett nytt värde för objektet.

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

-WhatIf

Visar vad som skulle hända om cmdleten kördes. Cmdleten körs inte.

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

Indata

Object

Du kan skicka ett objekt som representerar objektets nya värde till den här cmdleten.

Utdata

None

Som standard returnerar den här cmdleten inga utdata.

Object

När du använder parametern PassThru returnerar den här cmdleten ett objekt som representerar objektet.

Kommentarer

PowerShell innehåller följande alias för Set-Item:

  • Alla plattformar:

    • si
  • Set-Item stöds inte av PowerShell FileSystem-providern. Om du vill ändra värdena för objekt i filsystemet använder du cmdleten Set-Content .

  • I registerenheterna och HKLM:HKCU:ändrar Set-Item du data i värdet (standard) för en registernyckel.

    • Om du vill skapa och ändra namnen på registernycklarna använder du cmdleten New-Item och Rename-Item .
    • Om du vill ändra namn och data i registervärden använder du New-ItemPropertycmdletarna , Set-ItemPropertyoch Rename-ItemProperty .
  • Set-Item är utformad för att fungera med data som exponeras av alla leverantörer. Om du vill visa en lista över tillgängliga leverantörer i sessionen skriver du Get-PsProvider. Mer information finns i about_Providers.