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: Create 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: reasignar 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: Create y cambiar 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 .
PS> 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
PS> Set-Alias -Name loc -Value Get-Location -Option ReadOnly -Description 'Displays the current directory' -Force -PassThru | 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 de 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 muestren todas las propiedades. 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: Create un alias a 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 de la aplicación C:\Windows\notepad.exe. 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: Create 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.
PS> Function CD32 {Set-Location -Path C:\Windows\System32}
PS> 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.
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. 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. Los valores como ReadOnly y Constant protegen un alias frente a 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 cualquier ámbito nuevo que se cree.
- Constante No se puede cambiar ni eliminar.
- Ninguno No establece ninguna opción y es el valor predeterminado.
- Privado 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
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
- Privados
- Ámbitos numerados
- 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
Set-Alias
no acepta la entrada de la canalización.
Salidas
None or System.Management.Automation.AliasInfo
Cuando se usa el parámetro PassThru , Set-Alias
se genera un objeto System.Management.Automation.AliasInfo que representa el alias. De lo contrario, Set-Alias
no genera ninguna salida.
Notas
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 Set-Alias
o New-Alias
. Para quitar un alias, use el Remove-Item
cmdlet . Por ejemplo, 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
.