New-ItemProperty

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

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

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

Este cmdlet no agrega propiedades a un objeto.

  • Para agregar una propiedad a una instancia de un objeto, use el Add-Member cmdlet .
  • 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 MyCompany clave de HKLM:\Software hive.

El primer comando usa el parámetro Path para especificar la ruta de acceso de la clave del MyCompany Registro. 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 Get-ItemProperty cmdlet 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 de Registro a una clave del Registro. Para especificar la clave, usa un operador de canalización (|) para enviar un objeto que representa la clave a New-ItemProperty.

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

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 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, consulte about_Pipelines.

Ejemplo 3: Crear un valor multistring en el registro mediante una cadena here

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

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

a

Parámetros

-Confirm

Le solicita su confirmación antes de ejecutar el cmdlet.

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

-Credential

Especifica una cuenta de usuario con 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 PSCredential , como uno generado por el Get-Credential cmdlet . Si escribe un nombre de usuario, se le pedirá una contraseña.

Nota:

Este parámetro no es compatible con ningún proveedor instalado con PowerShell. Para suplantar a otro usuario o elevar las credenciales al ejecutar este cmdlet, use Invoke-Command.

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

-Exclude

Especifica, como matriz de cadenas, un elemento o elementos que este cmdlet excluye en la operación. El valor de este parámetro califica el parámetro Path . Escriba un elemento o patrón de ruta de acceso, como *.txt. Se permite el uso de caracteres comodín. El parámetro Exclude solo es efectivo cuando el comando incluye el contenido de un elemento, como C:\Windows\*, donde el carácter comodín especifica el contenido del C:\Windows directorio.

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

-Filter

Especifica un filtro para calificar el parámetro Path . El proveedor FileSystem es el único proveedor de PowerShell instalado que admite el uso de filtros. Puede encontrar la sintaxis del lenguaje de filtro FileSystem en about_Wildcards. 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.

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

-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 en función del proveedor. Para obtener más información, consulte about_Providers.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters: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 califica el parámetro Path . Escriba un elemento o patrón de ruta de acceso, como *.txt. Se permite el uso de caracteres comodín. El parámetro Include solo es efectivo cuando el comando incluye el contenido de un elemento, como C:\Windows\*, donde el carácter comodín especifica el contenido del C:\Windows directorio.

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

-LiteralPath

Especifica una ruta de acceso a una o varias ubicaciones. 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.

Para obtener más información, consulte about_Quoting_Rules.

Type:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters: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.

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

-Path

Especifica la ruta de acceso del elemento. Se permite el uso de caracteres comodín. Este parámetro identifica el elemento al que este cmdlet agrega la nueva propiedad.

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

-PropertyType

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

  • String: especifica una cadena terminada en NULL. Se usa para los valores de 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. Se usa para los valores de REG_EXPAND_SZ .
  • Binary: especifica datos binarios en cualquier forma. Se usa para los valores de REG_BINARY .
  • DWord: especifica un número binario de 32 bits. Se usa para los valores de REG_DWORD .
  • MultiString: especifica una matriz de cadenas terminadas en NULL terminadas en dos caracteres NULL. Se usa para los valores de REG_MULTI_SZ .
  • Qword: especifica un número binario de 64 bits. Se usa para los valores de REG_QWORD .
  • Unknown: indica un tipo de datos del Registro no admitido, como REG_RESOURCE_LIST valores.
Type:String
Aliases:Type
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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.

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

-WhatIf

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

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

Entradas

None

No se pueden canalizar objetos a este cmdlet.

Salidas

PSCustomObject

Este cmdlet devuelve un objeto personalizado que representa 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.