Share via


Utilizar aliases

Um alias é um nome alternativo ou nome abreviado para um cmdlet ou para um elemento de comando, como uma função, script, arquivo ou arquivo executável. Você pode executar o comando usando o alias em vez do nome executável.

Gerenciando aliases de comando

O PowerShell fornece cmdlets para gerenciar aliases de comando.

Get-Command -Noun Alias
CommandType Name         Version Source
----------- ----         ------- ------
Cmdlet      Export-Alias 7.0.0.0 Microsoft.PowerShell.Utility
Cmdlet      Get-Alias    7.0.0.0 Microsoft.PowerShell.Utility
Cmdlet      Import-Alias 7.0.0.0 Microsoft.PowerShell.Utility
Cmdlet      New-Alias    7.0.0.0 Microsoft.PowerShell.Utility
Cmdlet      Remove-Alias 7.0.0.0 Microsoft.PowerShell.Utility
Cmdlet      Set-Alias    7.0.0.0 Microsoft.PowerShell.Utility

Para obter mais informações, consulte about_Aliases.

Use o cmdlet Get-Alias para listar os aliases disponíveis em seu ambiente. Para listar os aliases de um único cmdlet, use o parâmetro Definition e especifique o nome executável.

Get-Alias -Definition Get-ChildItem
CommandType     Name
-----------     ----
Alias           dir -> Get-ChildItem
Alias           gci -> Get-ChildItem
Alias           ls -> Get-ChildItem

Para obter a definição de um único alias, use o parâmetro Name .

Get-Alias -Name gci
CommandType     Name
-----------     ----
Alias           gci -> Get-ChildItem

Aliases de compatibilidade no Windows

O PowerShell tem vários aliases que permitem que os usuários do UNIX e do cmd.exe usem comandos familiares no Windows. A tabela a seguir mostra comandos comuns, o cmdlet PowerShell relacionado e o alias do PowerShell:

cmd.exe comando Comando UNIX Cmdlet do PowerShell Alias do PowerShell
CD, chdir CD Set-Location sl, cd, chdir
CLS limpar Clear-Host cls clear
cópia CP Copy-Item cpi, cp, copy
del, apagar, rd, rmdir RM Remove-Item ri, del, erase, rd, rm, rmdir
Dir ls Get-ChildItem gci, dir, ls
eco eco Write-Output write echo
MD Mkdir New-Item ni
Mudança MV Move-Item mi, move, mi
POPD POPD Pop-Location popd
PcD Get-Location gl, pwd
empurrado empurrado Push-Location pushd
Ren MV Rename-Item rni, ren
type gato Get-Content gc, cat, type

Nota

Os aliases nesta tabela são específicos do Windows. Alguns aliases não estão disponíveis em outras plataformas. Isso é para permitir que o comando nativo funcione em uma sessão do PowerShell. Por exemplo, ls não é definido como um alias do PowerShell no macOS ou Linux para que o comando nativo seja executado em vez de Get-ChildItem.

Criando nomes alternativos para comandos com parâmetros

Você pode atribuir um alias a um cmdlet, script, função ou arquivo executável. Ao contrário de alguns shells Unix, você não pode atribuir um alias a um comando com parâmetros. Por exemplo, você pode atribuir um alias ao Get-Eventlog cmdlet, mas não pode atribuir um alias ao Get-Eventlog -LogName System comando. Você deve criar uma função que contenha o comando com parâmetros.

Para obter mais informações, consulte about_Aliases.

Aliases de parâmetros e nomes abreviados

O PowerShell também fornece maneiras de criar nomes abreviados para parâmetros. Os aliases de parâmetro são definidos usando o Alias atributo quando você declara o parâmetro. Eles não podem ser definidos usando os *-Alias cmdlets.

Para obter mais informações, consulte a documentação do atributo Alias.

Além dos aliases de parâmetro, o PowerShell permite especificar o nome do parâmetro usando o menor número de caracteres necessários para identificar exclusivamente o parâmetro. Por exemplo, o Get-ChildItem cmdlet tem os parâmetros Recurse e ReadOnly . Para identificar exclusivamente o parâmetro Recurse , você só precisa fornecer -rec. Se você combinar isso com o alias de comando, Get-ChildItem -Recurse pode ser encurtado para dir -rec.

Não use aliases em scripts

Os aliases são um recurso de conveniência para ser usado interativamente no shell. Você sempre deve usar os nomes completos de comandos e parâmetros em seus scripts.

  • Os aliases podem ser excluídos ou redefinidos em um script de perfil
  • Quaisquer aliases que você definir podem não estar disponíveis para o usuário de seus scripts
  • Os aliases tornam o código mais difícil de ler e manter