Set-Item

Cambia el valor de un elemento por el valor especificado en el comando.

Sintaxis

Set-Item
   [-Path] <String[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-Item
   -LiteralPath <String[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-Item
   [-Path] <string[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-Options <ScopedItemOptions>]
   [<CommonParameters>]
Set-Item
   [[-Value] <Object>]
   -LiteralPath <string[]>
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-Options <ScopedItemOptions>]
   [<CommonParameters>]
Set-Item
   [-Path] <string[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-Type <RegistryValueKind>]
   [<CommonParameters>]
Set-Item
   [[-Value] <Object>]
   -LiteralPath <string[]>
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-Type <RegistryValueKind>]
   [<CommonParameters>]

Description

El Set-Item cmdlet cambia el valor de un elemento, como una variable o una clave del Registro, al valor especificado en el comando .

Ejemplos

Ejemplo 1: Creación de un alias

Este comando crea un alias de np para el Bloc de notas.

Set-Item -Path alias:np -Value "c:\windows\notepad.exe"

Ejemplo 2: Cambiar el valor de una variable de entorno

Este comando cambia el valor de la variable de entorno UserRole a Administrator.

Set-Item -Path env:UserRole -Value "Administrator"

Ejemplo 3: Modificación de la función prompt

Este comando cambia la función prompt para que muestre la hora antes de la ruta de acceso.

Set-Item -Path function:prompt -Value {'PS '+ (Get-Date -Format t) + " " + (Get-Location) + '> '}

Ejemplo 4: Establecimiento de opciones para la función prompt

Este comando establece las opciones AllScope y ReadOnly de la función prompt. Este comando usa el parámetro dinámico Options de Set-Item. El parámetro Options solo está disponible cuando Set-Item se usa con el proveedor alias o función .

Set-Item -Path function:prompt -Options "AllScope,ReadOnly"

Parámetros

-Confirm

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

Tipo:SwitchParameter
Alias:cf
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Credential

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.

Tipo:PSCredential
Posición:Named
Valor predeterminado:Current user
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín: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.

Tipo:String[]
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín: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.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:True

-Force

Obliga al cmdlet a establecer elementos que de lo contrario no se pueden cambiar, como alias o variables de solo lectura. El cmdlet no puede cambiar variables ni alias de constantes. La implementación varía en función del proveedor. Para obtener más información, consulte about_Providers. Incluso con el parámetro Force , el cmdlet no puede invalidar las restricciones de seguridad.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín: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.

Tipo:String[]
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín: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 contiene caracteres de escape, escríbalos 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.

Tipo:String[]
Alias:PSPath, LP
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-Options

Se trata de un parámetro dinámico disponible por los proveedores de alias y funciones . Para obtener más información, consulte about_Alias_Provider y about_Function_Provider.

Especifica el valor de la propiedad Options de un alias.

Los valores válidos son:

  • None: el alias no tiene restricciones (valor predeterminado)
  • ReadOnly: el alias se puede eliminar, pero no se puede cambiar sin usar el parámetro Force .
  • Constant: el alias no se puede eliminar ni cambiar.
  • Private: el alias solo está disponible en el ámbito actual.
  • AllScope: el alias se copia en todos los ámbitos nuevos que se crean.
  • Unspecified: la opción no se especifica.
Tipo:ScopedItemOptions
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-PassThru

Pasa un objeto que representa el elemento a la canalización. De forma predeterminada, este cmdlet no genera ningún resultado.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Path

Especifica una ruta de acceso de la ubicación de los elementos. Se permite el uso de caracteres comodín.

Tipo:String[]
Posición:0
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:True

-Type

Se trata de un parámetro dinámico que el proveedor del Registro pone a disposición. El proveedor del Registro y este parámetro solo están disponibles en Windows.

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.
Tipo:RegistryValueKind
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-Value

Especifica un nuevo valor para el elemento.

Tipo:Object
Posición:1
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-WhatIf

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

Tipo:SwitchParameter
Alias:wi
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

Object

Puede canalizar un objeto que represente el nuevo valor del elemento a este cmdlet.

Salidas

None

De forma predeterminada, este cmdlet no devuelve ninguna salida.

Object

Cuando se usa el parámetro PassThru , este cmdlet devuelve un objeto que representa el elemento.

Notas

PowerShell incluye los siguientes alias para Set-Item:

  • Todas las plataformas:

    • si
  • Set-Item no es compatible con el proveedor FileSystem de PowerShell. Para cambiar los valores de los elementos del sistema de archivos, use el Set-Content cmdlet .

  • En las unidades HKLM: del Registro y HKCU:, Set-Item cambia los datos del valor (valor predeterminado) de una clave del Registro.

    • Para crear y cambiar los nombres de las claves del Registro, use el New-Item cmdlet y Rename-Item .
    • Para cambiar los nombres y los datos de los valores del Registro, use los New-ItemPropertycmdlets , Set-ItemPropertyy Rename-ItemProperty .
  • Set-Item 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.