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. Vanligtvis används den här cmdleten 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 MyCompany nyckeln för 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 Värde 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 MyCompany nyckeln.

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 till RegistryKey-objektet som Get-Item returneras med parametern LiteralPath i New-ItemProperty. Mer information finns i about_Pipelines.

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

Det här exemplet skapar 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

Anger ett användarkonto som har behörighet att utföra den här åtgärden. Standard är den aktuella användaren.

Ange ett användarnamn, till exempel User01 eller Domain01\User01, eller ange ett PSCredential-objekt , till exempel ett som genereras av cmdleten Get-Credential . Om du skriver ett användarnamn uppmanas du att ange ett lösenord.

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 skapa en egenskap för ett objekt som annars inte kan nås av användaren. 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 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

-Name

Anger ett namn på 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 till.

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:

  • 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: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 objekt till den här cmdleten.

Utdata

PSCustomObject

Den här cmdleten returnerar ett anpassat objekt som representerar 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 tillgängliga leverantörer i sessionen skriver du Get-PSProvider. Mer information finns i about_Providers.