Set-Item
Cambia el valor de un elemento al valor especificado en el comando .
Sintaxis
Path (Default) - All providers
Set-Item
[-Path] <String[]>
[[-Value] <Object>]
[-Force]
[-PassThru]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
LiteralPath - All providers
Set-Item
[[-Value] <Object>]
-LiteralPath <String[]>
[-Force]
[-PassThru]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Path (Default) - Alias and Function providers
Set-Item
[-Path] <string[]>
[[-Value] <Object>]
[-Force]
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Options <ScopedItemOptions>]
[<CommonParameters>]
LiteralPath - Alias and Function providers
Set-Item
[[-Value] <Object>]
-LiteralPath <string[]>
[-Force]
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Options <ScopedItemOptions>]
[<CommonParameters>]
Path (Default) - Registry provider
Set-Item
[-Path] <string[]>
[[-Value] <Object>]
[-Force]
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
LiteralPath - Registry provider
Set-Item
[[-Value] <Object>]
-LiteralPath <string[]>
[-Force]
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
Description
El cmdlet Set-Item cambia el valor de un elemento, como una variable o 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 de la solicitud 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 para la función prompt.
Este comando usa el parámetro dinámico Options de Set-Item.
El parámetro Opciones solo está disponible en Set-Item cuando se usa con el proveedor Alias o Función.
Set-Item -Path Function:prompt -Options "AllScope,ReadOnly"
Parámetros
-Confirm
Le pide confirmación antes de ejecutar el cmdlet.
Propiedades del parámetro
| Tipo: | SwitchParameter |
| Valor predeterminado: | False |
| Admite caracteres comodín: | False |
| DontShow: | False |
| Alias: | cf |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | 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.
Propiedades del parámetro
| Tipo: | PSCredential |
| Valor predeterminado: | Current user |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | 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, un elemento o elementos que este cmdlet excluye en la operación. El valor de este parámetro define el parámetro Path. Escriba un elemento de ruta o patrón, 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 directorio C:\Windows.
Propiedades del parámetro
| Tipo: | String[] |
| Valor predeterminado: | None |
| Admite caracteres comodín: | True |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | 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 para calificar el parámetro Path. El proveedor de FileSystem es el único proveedor de PowerShell instalado que admite el uso de filtros. Puede encontrar la sintaxis del lenguaje de filtro de 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.
Propiedades del parámetro
| Tipo: | String |
| Valor predeterminado: | None |
| Admite caracteres comodín: | True |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | 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 establecer elementos que de lo contrario no se pueden cambiar, como alias o variables de solo lectura. El cmdlet no puede cambiar los alias o variables constantes. La implementación varía de proveedor a 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.
Propiedades del parámetro
| Tipo: | SwitchParameter |
| Valor predeterminado: | False |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | 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 de ruta o patrón, 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 directorio C:\Windows.
Propiedades del parámetro
| Tipo: | String[] |
| Valor predeterminado: | None |
| Admite caracteres comodín: | True |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | 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 una ruta de acceso a una o varias ubicaciones. El valor de LiteralPath se usa tal como está escrito. 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 sobre_las_normas_de_citación.
Propiedades del parámetro
| Tipo: | String[] |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
| Alias: | PSPath, LP |
Conjuntos de parámetros
LiteralPath
| Posición: | Named |
| Mandatory: | True |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | True |
| Valor de los argumentos restantes: | False |
-Options
Se trata de un parámetro dinámico puesto a disposición por los proveedores de Alias y Función. Para obtener más información, vea 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 nuevos ámbitos que se creen. -
Unspecified: no se especifica la opción
Propiedades del parámetro
| Tipo: | ScopedItemOptions |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-PassThru
Pasa un objeto que representa el elemento a la canalización. De forma predeterminada, este cmdlet no genera ninguna salida.
Propiedades del parámetro
| Tipo: | SwitchParameter |
| Valor predeterminado: | False |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-Path
Especifica una ruta hacia la ubicación de los elementos. Se permite el uso de caracteres comodín.
Propiedades del parámetro
| Tipo: | String[] |
| Valor predeterminado: | None |
| Admite caracteres comodín: | True |
| DontShow: | False |
Conjuntos de parámetros
Path
| Posición: | 0 |
| Mandatory: | True |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | True |
| Valor de los argumentos restantes: | False |
-Type
Se trata de un parámetro dinámico que el proveedor del Registro pone a disposición. El proveedor del Registro de
Especifica el tipo de propiedad que agrega este cmdlet. Los valores aceptables para este parámetro son:
-
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 utiliza para los valores de REG_EXPAND_SZ. -
Binary: especifica datos binarios en cualquier formato. Se usa para los valores de REG_BINARY. -
DWord: especifica un número binario de 32 bits. Se utiliza para los valores REG_DWORD. -
MultiString: Especifica una matriz de cadenas terminadas en nulo, finalizadas con dos caracteres nulos. Se utiliza para los valores de REG_MULTI_SZ. -
Qword: especifica un número binario de 64 bits. Se utiliza para valores de REG_QWORD. -
Unknown: indica un tipo de datos del Registro no admitido, como valores REG_RESOURCE_LIST.
Propiedades del parámetro
| Tipo: | RegistryValueKind |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | True |
| Valor de los argumentos restantes: | False |
-Value
Especifica un nuevo valor para el elemento.
Propiedades del parámetro
| Tipo: | Object |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | 1 |
| Mandatory: | False |
| Valor de la canalización: | True |
| 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 del parámetro
| Tipo: | SwitchParameter |
| Valor predeterminado: | False |
| Admite caracteres comodín: | False |
| DontShow: | False |
| Alias: | Wi |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | 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
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-Itemno es compatible con el proveedor FileSystem de PowerShell. Para cambiar los valores de los elementos del sistema de archivos, use el cmdletSet-Content.En las unidades de Registro,
HKLM:andHKCU:,Set-Itemcambia los datos del valor (Default) de una clave del Registro.- Para crear y cambiar los nombres de las claves del Registro, use el cmdlet
New-ItemyRename-Item. - Para cambiar los nombres y los datos de los valores del registro, use los cmdlets
New-ItemProperty,Set-ItemPropertyyRename-ItemProperty.
- Para crear y cambiar los nombres de las claves del Registro, use el cmdlet
Set-Itemestá diseñado para trabajar con los datos expuestos por cualquier proveedor. Para enumerar los proveedores disponibles en la sesión, escribaGet-PSProvider. Para obtener más información, consulte about_Providers.