Compartir a través de


New-ItemProperty

Crea una nueva propiedad para un elemento y establece su valor.

Sintaxis

Path (valor predeterminado)

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

Description

El cmdlet New-ItemProperty crea una nueva propiedad para un elemento especificado y establece su valor. Normalmente, este cmdlet se usa para crear nuevos valores del Registro, ya que los valores del Registro son propiedades de un elemento de clave del Registro.

Este cmdlet no agrega propiedades a un objeto .

  • Para agregar una propiedad a una instancia de un objeto, use el cmdlet Add-Member.
  • Para agregar una propiedad a todos los objetos de un tipo determinado, modifique el archivo Types.ps1xml.

Ejemplos

Ejemplo 1: Agregar una entrada del Registro

Este comando agrega una nueva entrada del Registro, "NoOfEmployees", a la clave "MyCompany" de "HKLM:\Software hive".

El primer comando usa el parámetro Path para especificar la ruta de acceso de la clave del Registro "MyCompany". Usa el parámetro Name para especificar un nombre para la entrada y el parámetro Value para especificar su valor.

El segundo comando usa el cmdlet Get-ItemProperty para ver la nueva entrada del Registro.

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

Ejemplo 2: Agregar una entrada del Registro a una clave

Este comando agrega una nueva entrada del Registro a una clave del Registro. Para especificar la clave, usa un operador de canalización (|) para enviar un objeto que representa la clave para New-ItemProperty.

La primera parte del comando usa el cmdlet Get-Item para obtener la clave del Registro "MyCompany". El operador de canalización envía los resultados del comando a New-ItemProperty, que agrega la nueva entrada del Registro ("NoOfLocations") y su valor (3), a la clave "MyCompany".

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

Este comando funciona porque la característica de enlace de parámetros de Windows PowerShell asocia la ruta de acceso del objeto RegistryKey que Get-Item devuelve con el parámetro LiteralPath de New-ItemProperty. Para obtener más información, vea about_Pipelines.

Ejemplo 3: Creación de un valor multistring en el Registro mediante un Here-String

En este ejemplo se crea un valor MultiString mediante un valor 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

Ejemplo 4: Creación de un valor multistring en el Registro mediante una matriz

En el ejemplo se muestra cómo usar una matriz de valores para crear el valor de MultiString.

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

Parámetros

-Confirm

Le pide confirmación antes de ejecutar el cmdlet.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False
Alias:cf

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Credential

Especifica una cuenta de usuario que tiene permiso para realizar esta acción. El valor predeterminado es el usuario actual.

Escriba un nombre de usuario, como "User01" o "Domain01\User01", o escriba un objeto de PSCredential, como uno generado por el cmdlet Get-Credential. Si escribe un nombre de usuario, se le pedirá una contraseña.

Advertencia

Este parámetro no es compatible con ningún proveedor instalado con Windows PowerShell.

Propiedades de parámetro

Tipo:PSCredential
Valor predeterminado:Current user
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-Exclude

Especifica, como matriz de cadenas, una propiedad o propiedad que este cmdlet excluye de la operación. El valor de este parámetro define el parámetro Path. Escriba un elemento o patrón de ruta de acceso, como "*.txt". Se permite el uso de caracteres comodín.

Propiedades de parámetro

Tipo:

String[]

Valor predeterminado:None
Admite caracteres comodín:True
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Filter

Especifica un filtro en el formato o idioma del proveedor. El valor de este parámetro define el parámetro Path.

La sintaxis del filtro, incluido el uso de caracteres comodín, depende del proveedor. Los filtros son más eficaces que otros parámetros, ya que el proveedor los aplica cuando el cmdlet obtiene los objetos en lugar de que PowerShell filtre los objetos una vez recuperados.

Propiedades de parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:True
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Force

Obliga al cmdlet a crear una propiedad en un objeto al que el usuario no puede tener acceso de otro modo. La implementación varía de proveedor a proveedor. Para obtener más información, consulte about_Providers.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Include

Especifica, como matriz de cadenas, un elemento o elementos que este cmdlet incluye en la operación. El valor de este parámetro define el parámetro Path. Escriba un elemento o patrón de ruta de acceso, como "*.txt". Se permite el uso de caracteres comodín.

Propiedades de parámetro

Tipo:

String[]

Valor predeterminado:None
Admite caracteres comodín:True
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-LiteralPath

Especifica la ruta de acceso a la ubicación actual de la propiedad. A diferencia del parámetro Path, el valor de LiteralPath se usa exactamente como se escribe. Ninguno de los caracteres se interpreta como caracteres comodín. Si la ruta de acceso incluye caracteres de escape, escríbala entre comillas simples. Las comillas simples indican a PowerShell que no interprete ningún carácter como secuencias de escape.

Propiedades de parámetro

Tipo:

String[]

Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:PSPath

Conjuntos de parámetros

LiteralPath
Posición:Named
Obligatorio:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-Name

Especifica un nombre para la nueva propiedad. Si la propiedad es una entrada del Registro, este parámetro especifica el nombre de la entrada.

Propiedades de parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:PSProperty

Conjuntos de parámetros

(All)
Posición:1
Obligatorio:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-Path

Especifica la ruta de acceso del elemento. Este parámetro identifica el elemento al que este cmdlet agrega la nueva propiedad.

Propiedades de parámetro

Tipo:

String[]

Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

Path
Posición:0
Obligatorio:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-PropertyType

Especifica el tipo de propiedad que agrega este cmdlet. Los valores aceptables para este parámetro son:

  • string: especifica una cadena terminada en NULL. Equivalente a REG_SZ.
  • expandString: especifica una cadena terminada en null que contiene referencias no expandidas a variables de entorno que se expanden cuando se recupera el valor. Equivalente a REG_EXPAND_SZ.
  • binary: especifica datos binarios en cualquier formato. Equivalente a REG_BINARY.
  • DWord: especifica un número binario de 32 bits. Equivalente a REG_DWORD.
  • multistring: especifica una matriz de cadenas terminadas en null terminadas en dos caracteres NULL. Equivalente a REG_MULTI_SZ.
  • Qword: especifica un número binario de 64 bits. Equivalente a REG_QWORD.
  • desconocido: indica un tipo de datos del Registro no admitido, como REG_RESOURCE_LIST.

Propiedades de parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:Tipo

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-UseTransaction

Incluye el comando en la transacción activa. Este parámetro solo es válido cuando una transacción está en curso. Para obtener más información, consulte about_Transactions.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False
Alias:usetx

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Value

Especifica el valor de la propiedad. Si la propiedad es una entrada del Registro, este parámetro especifica el valor de la entrada.

Propiedades de parámetro

Tipo:Object
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-WhatIf

Muestra lo que sucedería si el cmdlet se ejecuta. El cmdlet no se ejecuta.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False
Alias:Wi

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

CommonParameters

Este cmdlet admite los parámetros comunes: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction y -WarningVariable. Para obtener más información, vea about_CommonParameters.

Entradas

None

No se puede canalizar la entrada a este cmdlet.

Salidas

PSCustomObject

New-ItemProperty devuelve un objeto personalizado que contiene la nueva propiedad.

Notas

New-ItemProperty está diseñado para trabajar con los datos expuestos por cualquier proveedor. Para enumerar los proveedores disponibles en la sesión, escriba Get-PSProvider. Para obtener más información, consulte about_Providers.