Condividi tramite


New-ItemProperty

Crea una nuova proprietà per un elemento e ne imposta il valore.

Sintassi

Path (Impostazione predefinita)

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

LiteralPath

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

Descrizione

Il cmdlet New-ItemProperty crea una nuova proprietà per un elemento specificato e ne imposta il valore. In genere, questo cmdlet viene usato per creare nuovi valori del Registro di sistema, perché i valori del Registro di sistema sono proprietà di un elemento di chiave del Registro di sistema.

Questo cmdlet non aggiunge proprietà a un oggetto .

  • Per aggiungere una proprietà a un'istanza di un oggetto, utilizzare il cmdlet Add-Member.
  • Per aggiungere una proprietà a tutti gli oggetti di un particolare tipo, modificare il file Types.ps1xml.

Esempio

Esempio 1: Aggiungere una voce del Registro di sistema

Questo comando aggiunge una nuova voce del Registro di sistema, "NoOfEmployees", alla chiave "MyCompany" dell'hive "HKLM:\Software".

Il primo comando utilizza il parametro Path per specificare il percorso della chiave del Registro di sistema "MyCompany". Usa il parametro nome per specificare un nome per la voce e il parametro Valore per specificarne il valore.

Il secondo comando usa il cmdlet Get-ItemProperty per visualizzare la nuova voce del Registro di sistema.

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

Esempio 2: Aggiungere una voce del Registro di sistema a una chiave

Questo comando aggiunge una nuova voce del Registro di sistema a una chiave del Registro di sistema. Per specificare la chiave, viene utilizzato un operatore pipeline (|) per inviare un oggetto che rappresenta la chiave a New-ItemProperty.

La prima parte del comando usa il Get-Item cmdlet per ottenere la chiave del Registro di sistema "MyCompany". L'operatore della pipeline invia i risultati del comando a New-ItemProperty, che aggiunge la nuova voce del Registro di sistema ("NoOfLocations") e il relativo valore (3) alla chiave "MyCompany".

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

Questo comando funziona perché la funzionalità di associazione dei parametri di Windows PowerShell associa il percorso dell'oggetto RegistryKey restituito Get-Item al parametro LiteralPath di New-ItemProperty. Per altre informazioni, vedere about_Pipelines.

Esempio 3: Creare un valore MultiString nel Registro di sistema usando un Here-String

In questo esempio viene creato un valore MultiString utilizzando un 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

Esempio 4: Creare un valore MultiString nel Registro di sistema usando una matrice

Nell'esempio viene illustrato come usare una matrice di valori per creare il valore MultiString.

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

Parametri

-Confirm

Richiede conferma prima di eseguire il cmdlet.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:False
Supporta i caratteri jolly:False
DontShow:False
Alias:cfr

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Credential

Specifica un account utente autorizzato a eseguire questa azione. Il valore predefinito è l'utente corrente.

Digitare un nome utente, ad esempio "User01" o "Domain01\User01" oppure immettere un oggetto PSCredential, ad esempio quello generato dal cmdlet Get-Credential. Se si digita un nome utente, viene richiesta una password.

Avvertimento

Questo parametro non è supportato da alcun provider installato con Windows PowerShell.

Proprietà dei parametri

Tipo:PSCredential
Valore predefinito:Current user
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:True
Valore dagli argomenti rimanenti:False

-Exclude

Specifica, come matrice di stringhe, una proprietà o una proprietà che questo cmdlet esclude dall'operazione. Il valore di questo parametro qualifica il parametro Path. Immettere un elemento o un modello di percorso, ad esempio "*.txt". Sono consentiti caratteri jolly.

Proprietà dei parametri

Tipo:

String[]

Valore predefinito:None
Supporta i caratteri jolly:True
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Filter

Specifica un filtro nel formato o nella lingua del provider. Il valore di questo parametro qualifica il parametro Path.

La sintassi del filtro, incluso l'uso di caratteri jolly, dipende dal provider. I filtri sono più efficienti rispetto ad altri parametri, perché il provider li applica quando il cmdlet ottiene gli oggetti anziché filtrare gli oggetti dopo il recupero.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:True
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Force

Forza il cmdlet a creare una proprietà su un oggetto a cui non è possibile accedere in altro modo dall'utente. L'implementazione varia da provider a provider. Per altre informazioni, consultare about_Providers.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:False
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Include

Specifica, sotto forma di matrice di stringhe, un elemento o elementi che questo cmdlet include nell'operazione. Il valore di questo parametro qualifica il parametro Path. Immettere un elemento o un modello di percorso, ad esempio "*.txt". Sono consentiti caratteri jolly.

Proprietà dei parametri

Tipo:

String[]

Valore predefinito:None
Supporta i caratteri jolly:True
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-LiteralPath

Specifica il percorso alla posizione attuale della proprietà. A differenza del parametro Path, il valore di LiteralPath viene usato esattamente come viene digitato. Nessun carattere viene interpretato come metacaratteri. Se il percorso include caratteri di escape, racchiudilo tra virgolette singole. Le virgolette singole indicano a PowerShell di non interpretare alcun carattere come sequenze di escape.

Proprietà dei parametri

Tipo:

String[]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False
Alias:PSPath

Set di parametri

LiteralPath
Posizione:Named
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:True
Valore dagli argomenti rimanenti:False

-Name

Specifica un nome per la nuova proprietà. Se la proprietà è una voce del Registro di sistema, questo parametro specifica il nome della voce.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False
Alias:PSProperty

Set di parametri

(All)
Posizione:1
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:True
Valore dagli argomenti rimanenti:False

-Path

Specifica il percorso dell'elemento. Questo parametro identifica l'elemento a cui questo cmdlet aggiunge la nuova proprietà.

Proprietà dei parametri

Tipo:

String[]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

Path
Posizione:0
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-PropertyType

Specifica il tipo di proprietà aggiunta da questo cmdlet. I valori accettabili per questo parametro sono:

  • String: specifica una stringa con terminazione null. Equivalente a REG_SZ.
  • ExpandString: specifica una stringa con terminazione Null che contiene riferimenti non espansi a variabili di ambiente che vengono espanse quando il valore viene recuperato. Equivale a REG_EXPAND_SZ.
  • Binario: specifica i dati binari in qualsiasi formato. Equivale a REG_BINARY.
  • DWord: specifica un numero binario a 32 bit. Equivale a REG_DWORD.
  • MultiString: specifica una matrice di stringhe con terminazione null terminate da due caratteri null. Equivale a REG_MULTI_SZ.
  • Qword: specifica un numero binario a 64 bit. Equivale a REG_QWORD.
  • Sconosciuto: indica un tipo di dati del Registro di sistema non supportato, ad esempio REG_RESOURCE_LIST.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False
Alias:TIPO

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:True
Valore dagli argomenti rimanenti:False

-UseTransaction

Include il comando nella transazione attiva. Questo parametro è valido solo quando è in corso una transazione. Per ulteriori informazioni, vedere about_Transactions.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:False
Supporta i caratteri jolly:False
DontShow:False
Alias:usetx

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Value

Specifica il valore della proprietà. Se la proprietà è una voce del Registro di sistema, questo parametro specifica il valore della voce.

Proprietà dei parametri

Tipo:Object
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:True
Valore dagli argomenti rimanenti:False

-WhatIf

Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:False
Supporta i caratteri jolly:False
DontShow:False
Alias:Wi

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

CommonParameters

Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.

Input

None

Non è possibile inviare tramite pipe l'input a questo cmdlet.

Output

PSCustomObject

New-ItemProperty Restituisce un oggetto personalizzato che contiene la nuova proprietà.

Note

New-ItemProperty è progettato per lavorare con i dati esposti da qualsiasi provider. Per elencare i provider disponibili nella sessione, digitare Get-PSProvider. Per altre informazioni, consultare about_Providers.