Dela via


New-ItemProperty

Skapar en ny egenskap för ett objekt och anger dess värde.

Syntax

New-ItemProperty
   [-Path] <String[]>
   [-Name] <String>
   [-PropertyType <String>]
   [-Value <Object>]
   [-Force]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-ItemProperty
   -LiteralPath <String[]>
   [-Name] <String>
   [-PropertyType <String>]
   [-Value <Object>]
   [-Force]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

Cmdleten New-ItemProperty skapar en ny egenskap för ett angivet objekt och anger dess värde. Den här cmdleten används vanligtvis för att skapa nya registervärden, eftersom registervärden är egenskaper för ett registernyckelobjekt.

Den här cmdleten lägger inte till egenskaper i ett objekt.

  • Om du vill lägga till en egenskap i en instans av ett objekt använder du cmdleten Add-Member .
  • Om du vill lägga till en egenskap för alla objekt av en viss typ ändrar du filen Types.ps1xml.

Exempel

Exempel 1: Lägg till en registerpost

Det här kommandot lägger till en ny registerpost, "NoOfEmployees", till nyckeln "MyCompany" i "HKLM:\Software hive".

Det första kommandot använder parametern Path för att ange sökvägen till registernyckeln "MyCompany". Den använder parametern Namn för att ange ett namn för posten och parametern Value för att ange dess värde.

Det andra kommandot använder cmdleten Get-ItemProperty för att se den nya registerposten.

New-ItemProperty -Path "HKLM:\Software\MyCompany" -Name "NoOfEmployees" -Value 822
Get-ItemProperty "HKLM:\Software\MyCompany"

PSPath        : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\mycompany
PSParentPath  : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software
PSChildName   : mycompany
PSDrive       : HKLM
PSProvider    : Microsoft.PowerShell.Core\Registry
NoOfLocations : 2
NoOfEmployees : 822

Exempel 2: Lägga till en registerpost i en nyckel

Det här kommandot lägger till en ny registerpost i en registernyckel. För att ange nyckeln använder den en pipelineoperator (|) för att skicka ett objekt som representerar nyckeln till New-ItemProperty.

Den första delen av kommandot använder cmdleten Get-Item för att hämta registernyckeln "MyCompany". Pipelineoperatorn skickar resultatet av kommandot till , som lägger till New-ItemPropertyden nya registerposten ("NoOfLocations" och dess värde (3) till nyckeln "MyCompany".

Get-Item -Path "HKLM:\Software\MyCompany" | New-ItemProperty -Name NoOfLocations -Value 3

Det här kommandot fungerar eftersom parameterbindningsfunktionen i PowerShell associerar sökvägen RegistryKey till objektet som Get-Item returneras med parametern LiteralPath för New-ItemProperty. Mer information finns i about_Pipelines.

Exempel 3: Skapa ett MultiString-värde i registret med hjälp av en Here-String

I det här exemplet skapas ett MultiString-värde med hjälp av en Here-String.

$newValue = New-ItemProperty -Path "HKLM:\SOFTWARE\ContosoCompany\" -Name 'HereString' -PropertyType MultiString -Value @"
This is text which contains newlines
It can also contain "quoted" strings
"@
$newValue.multistring

This is text which contains newlines
It can also contain "quoted" strings

Exempel 4: Skapa ett MultiString-värde i registret med hjälp av en matris

Exemplet visar hur du använder en matris med värden för att skapa värdet MultiString .

$newValue = New-ItemProperty -Path "HKLM:\SOFTWARE\ContosoCompany\" -Name 'MultiString' -PropertyType MultiString -Value ('a','b','c')
$newValue.multistring[0]

a

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

Anteckning

Den här parametern stöds inte av några providers 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 denna cmdlet 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 Path . 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 mer effektiva ä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 efter att 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 skapa en egenskap för ett objekt som inte kan nås av användaren på annat sätt. Implementeringen varierar från leverantör till leverantör. Mer information finns i about_Providers.

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 denna cmdlet 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 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

-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 talar om för PowerShell att inga tecken ska tolkas 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

-Name

Anger ett namn för den nya egenskapen. Om egenskapen är en registerpost anger den här parametern namnet på posten.

Type:String
Aliases:PSProperty
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Path

Anger sökvägen till objektet. Jokertecken tillåts. Den här parametern identifierar det objekt som den här cmdleten lägger till den nya egenskapen i.

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

-PropertyType

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

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

-Value

Anger egenskapsvärdet. Om egenskapen är en registerpost anger den här parametern värdet för posten.

Type:Object
Position:Named
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

None

Du kan inte skicka indata till denna cmdlet.

Utdata

PSCustomObject

New-ItemProperty returnerar ett anpassat objekt som innehåller den nya egenskapen.

Kommentarer

New-ItemProperty är utformad för att fungera med data som exponeras av alla leverantörer. Om du vill visa en lista över de providrar som är tillgängliga i sessionen skriver du Get-PSProvider. Mer information finns i about_Providers.