Set-Alias
Crea o cambia un alias para un cmdlet u otro comando en la sesión actual de PowerShell.
Syntax
Set-Alias
[-Name] <string>
[-Value] <string>
[-Description <string>]
[-Option <ScopedItemOptions>]
[-PassThru]
[-Scope <string>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
El Set-Alias
cmdlet crea o cambia un alias para un cmdlet o un comando, como una función, un script, un archivo u otro ejecutable. Un alias es un nombre alternativo que hace referencia a un cmdlet o comando. Por ejemplo, sal
es el alias del Set-Alias
cmdlet . Para más información, vea about_Aliases.
Un cmdlet puede tener varios alias, pero un alias solo se puede asociar a un cmdlet. Puede usar Set-Alias
para reasignar un alias existente a otro cmdlet o cambiar las propiedades de un alias, como la descripción.
Un alias creado o modificado por Set-Alias
no es permanente y solo está disponible durante la sesión actual de PowerShell. Cuando se cierra la sesión de PowerShell, se quita el alias.
Ejemplos
Ejemplo 1: Creación de un alias para un cmdlet
Este comando crea un alias en un cmdlet en la sesión actual de PowerShell.
PS> Set-Alias -Name list -Value Get-ChildItem
PS> Get-Alias -Name list
CommandType Name
----------- ----
Alias list -> Get-ChildItem
El Set-Alias
cmdlet crea un alias en la sesión actual de PowerShell. El parámetro Name especifica el nombre del alias, list
. El parámetro Value especifica el cmdlet que ejecuta el alias.
Para ejecutar el alias, escriba list
en la línea de comandos de PowerShell.
Ejemplo 2: Reasignación de un alias existente a otro cmdlet
Este comando reasigna un alias existente para ejecutar otro cmdlet.
PS> Get-Alias -Name list
CommandType Name
----------- ----
Alias list -> Get-ChildItem
PS> Set-Alias -Name list -Value Get-Location
PS> Get-Alias -Name list
CommandType Name
----------- ----
Alias list -> Get-Location
El Get-Alias
cmdlet usa el parámetro Name para mostrar el list
alias. El list
alias está asociado al Get-ChildItem
cmdlet . Cuando se ejecuta el list
alias, se muestran los elementos del directorio actual.
El Set-Alias
cmdlet usa el parámetro Name para especificar el list
alias. El parámetro Value asocia el alias al Get-Location
cmdlet .
El Get-Alias
cmdlet usa el parámetro Name para mostrar el list
alias. El list
alias está asociado al Get-Location
cmdlet . Cuando se ejecuta el list
alias, se muestra la ubicación del directorio actual.
Ejemplo 3: Creación y cambio de un alias de solo lectura
Este comando crea un alias de solo lectura. La opción de solo lectura impide cambios no deseados en un alias. Para cambiar o eliminar un alias de solo lectura, use el parámetro Force .
Set-Alias -Name loc -Value Get-Location -Option ReadOnly -PassThru |
Format-List -Property *
DisplayName : loc -> Get-Location
Definition : Get-Location
Options : ReadOnly
Description :
Name : loc
CommandType : Alias
$Parameters = @{
Name = 'loc'
Value = (Get-Location)
Option = 'ReadOnly'
Description = 'Displays the current directory'
Force = $true
PassThru = $true
}
Set-Alias @Parameters | Format-List -Property *
DisplayName : loc -> Get-Location
Definition : Get-Location
Options : ReadOnly
Description : Displays the current directory
Name : loc
CommandType : Alias
El Set-Alias
cmdlet crea un alias en la sesión actual de PowerShell. El parámetro Name especifica el nombre del alias, loc
. El parámetro Value especifica el Get-Location
cmdlet que ejecuta el alias. El parámetro Option especifica el valor ReadOnly . El parámetro PassThru representa el objeto alias y envía el objeto a la canalización al Format-List
cmdlet . Format-List
usa el parámetro Property con un asterisco (*
) para que se muestre cada propiedad. La salida de ejemplo muestra una lista parcial de esas propiedades.
El loc
alias se cambia con la adición de dos parámetros. Descripción agrega texto para explicar el propósito del alias. El parámetro Force es necesario porque el loc
alias es de solo lectura. Si no se usa el parámetro Force , se produce un error en el cambio.
Ejemplo 4: Creación de un alias en un archivo ejecutable
En este ejemplo se crea un alias en un archivo ejecutable en el equipo local.
PS> Set-Alias -Name np -Value C:\Windows\notepad.exe
PS> Get-Alias -Name np
CommandType Name
----------- ----
Alias np -> notepad.exe
El Set-Alias
cmdlet crea un alias en la sesión actual de PowerShell. El parámetro Name especifica el nombre del alias, np
. El parámetro Value especifica la ruta de acceso y el nombre C:\Windows\notepad.exe
de la aplicación . El Get-Alias
cmdlet usa el parámetro Name para mostrar que el np
alias está asociado a notepad.exe
.
Para ejecutar el alias, escriba np
en la línea de comandos de PowerShell para abrir notepad.exe
.
Ejemplo 5: Creación de un alias para un comando con parámetros
En este ejemplo se muestra cómo asignar un alias a un comando con parámetros.
Puede crear un alias para un cmdlet, como Set-Location
. No se puede crear un alias para un comando con parámetros y valores, como Set-Location -Path C:\Windows\System32
. Para crear un alias para un comando, cree una función que incluya el comando y, luego, cree un alias para la función. Para obtener más información, consulte about_Functions.
Function CD32 {Set-Location -Path C:\Windows\System32}
Set-Alias -Name Go -Value CD32
Se crea una función denominada CD32
. La función usa el Set-Location
cmdlet con el parámetro Path para especificar el directorio , C:\Windows\System32
.
El Set-Alias
cmdlet crea un alias para la función en la sesión actual de PowerShell. El parámetro Name especifica el nombre del alias, Go
. El parámetro Value especifica el nombre de la función, CD32
.
Para ejecutar el alias, escriba Go
en la línea de comandos de PowerShell. La CD32
función se ejecuta y cambia al directorio C:\Windows\System32
.
Ejemplo 6: Opciones de actualización de un alias existente
En este ejemplo se muestra cómo asignar varias opciones mediante el parámetro Option .
Siguiendo con el ejemplo anterior, establezca el alias Go
como ReadOnly
y Private
.
Set-Alias -Name Go -Option ReadOnly, Private
El alias Go
ya debería existir. Después de ejecutar el comando, el alias no se puede cambiar sin usar el parámetro Force y solo está disponible en el ámbito actual.
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 |
-Description
Especifica una descripción del alias. Se puede escribir cualquier cadena. Si la descripción incluye espacios, escríbalo entre comillas simples.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Use el parámetro Force para cambiar o eliminar un alias que tenga el parámetro Option establecido en ReadOnly.
El parámetro Force no puede cambiar ni eliminar un alias con el parámetro Option establecido en Constant.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Especifica el nombre de un nuevo alias. Un nombre de alias puede contener caracteres alfanuméricos y guiones. Los nombres de alias no pueden ser numéricos, como 123.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Option
Establece el valor de la propiedad Option del alias. Valores como ReadOnly
y Constant
protegen un alias de cambios no deseados. Para ver la propiedad Option de todos los alias de la sesión, escriba Get-Alias | Format-Table -Property Name, Options -Autosize
.
Los valores aceptables para este parámetro son los siguientes:
AllScope
: el alias se copia en todos los ámbitos nuevos que se crean.Constant
- No se puede cambiar ni eliminar.None
: no establece ninguna opción y es el valor predeterminado.Private
: el alias solo está disponible en el ámbito actual.ReadOnly
: no se puede cambiar ni eliminar a menos que se use el parámetro Force .Unspecified
Estos valores se definen como una enumeración basada en marcas. Puede combinar varios valores para establecer varias marcas mediante este parámetro. Los valores se pueden pasar al parámetro Option como una matriz de valores o como una cadena separada por comas de esos valores. El cmdlet combina los valores mediante una operación binary-OR. Pasar valores como una matriz es la opción más sencilla y también permite usar la finalización de tabulación en los valores.
Type: | ScopedItemOptions |
Accepted values: | AllScope, Constant, None, Private, ReadOnly, Unspecified |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PassThru
Devuelve un objeto que representa el alias. Use un cmdlet de formato como Format-List
para mostrar el objeto . De forma predeterminada, Set-Alias
no genera ninguna salida.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Scope
Especifica el ámbito en el que este alias es válido. El valor predeterminado es Local. Para obtener más información, consulte about_Scopes.
Los valores aceptables son los siguientes:
Global
Local
Private
Numbered scopes
Script
Type: | String |
Accepted values: | Global, Local, Private, Numbered scopes, Script |
Position: | Named |
Default value: | Local |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Value
Especifica el nombre del cmdlet o comando que ejecuta el alias. El parámetro Value es la propiedad Definition del alias.
Type: | String |
Position: | 1 |
Default value: | None |
Required: | True |
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
None
De forma predeterminada, este cmdlet no devuelve ninguna salida.
Cuando se usa el parámetro PassThru , este cmdlet devuelve un objeto AliasInfo que representa el alias.
Notas
PowerShell incluye los siguientes alias para Set-Alias
:
- Todas las plataformas:
sal
PowerShell incluye alias integrados que están disponibles en cada sesión de PowerShell. El Get-Alias
cmdlet muestra los alias disponibles en una sesión de PowerShell.
Para crear un alias, use los cmdlets Set-Alias
o New-Alias
. En PowerShell 6, para eliminar un alias, use el Remove-Alias
cmdlet . Remove-Item
se acepta por compatibilidad con versiones anteriores, como para scripts creados con versiones anteriores de PowerShell. Use un comando como Remove-Item -Path Alias:aliasname
.
Para crear un alias que esté disponible en cada sesión de PowerShell, agréguelo al perfil de PowerShell. Para obtener más información, consulte about_Profiles.
Un alias se puede guardar y reutilizar en otra sesión de PowerShell mediante una exportación e importación. Para guardar un alias en un archivo, use Export-Alias
. Para agregar un alias guardado a una nueva sesión de PowerShell, use Import-Alias
.