Como usar aliases
Um alias é um nome alternativo ou um nome abreviado para um cmdlet ou para um elemento de comando, como uma função, um script, um arquivo ou um arquivo executável. Você pode executar o comando usando o alias em vez do nome do executável.
Gerenciando aliases de comando
O PowerShell fornece cmdlets para gerenciar aliases de comando. O comando a seguir mostra os cmdlets que gerenciam aliases.
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 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 alias, use o parâmetro Name.
Get-Alias -Name gci
CommandType Name
----------- ----
Alias gci -> Get-ChildItem
Para criar um alias, use o comando Set-Alias
. Você pode criar aliases para cmdlets, funções, scripts e arquivos executáveis nativos.
Set-Alias -Name np -Value Notepad.exe
Set-Alias -Name cmpo -Value Compare-Object
Aliases de compatibilidade no Windows
O PowerShell possui vários aliases que permitem que usuários UNIX e cmd.exe
usem comandos familiares no Windows. A seguinte tabela mostra comandos comuns, o cmdlet do PowerShell relacionado e o alias do PowerShell:
Shell de comando do Windows | Comando UNIX | Cmdlet do PowerShell | Alias do PowerShell |
---|---|---|---|
cd , chdir |
cd |
Set-Location |
sl , cd , chdir |
cls |
clear |
Clear-Host |
cls clear |
copy |
cp |
Copy-Item |
cpi , cp , copy |
del , erase , rd , rmdir |
rm |
Remove-Item |
ri , del , erase , rd , rm , rmdir |
dir |
ls |
Get-ChildItem |
gci , dir , ls |
echo |
echo |
Write-Output |
write echo |
md |
mkdir |
New-Item |
ni |
move |
mv |
Move-Item |
mi , move , mi |
popd |
popd |
Pop-Location |
popd |
pwd |
Get-Location |
gl , pwd |
|
pushd |
pushd |
Push-Location |
pushd |
ren |
mv |
Rename-Item |
rni , ren |
type |
cat |
Get-Content |
gc , cat , type |
Observação
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. Diferente de alguns shells do Unix, você não pode atribuir um alias a um comando com parâmetros. Por exemplo, você pode atribuir um alias ao cmdlet Get-Eventlog
, mas não pode atribuir um alias ao comando Get-Eventlog -LogName System
.
Você precisa criar uma função que contenha o comando com parâmetros.
Para obter mais informações, consulte about_Aliases.
Aliases de parâmetro 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 atributo Alias
quando você declara o parâmetro. Eles não podem ser definidos usando os cmdlets *-Alias
.
Para obter mais informações, consulte a documentação do Atributo de alias.
Além dos aliases de parâmetro, o PowerShell permite que você especifique o nome do parâmetro usando o menor número de caracteres necessários para identificar exclusivamente o parâmetro. Por exemplo, o cmdlet Get-ChildItem
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
poderá ser reduzido para dir -rec
.
Não usar aliases em scripts
Os aliases são um recurso conveniente para ser usado interativamente no shell. Você sempre deve usar os nomes completos de comandos e parâmetros em seus scripts.
- Aliases podem ser excluídos ou redefinidos em um script de perfil
- Qualquer alias que você definir pode não estar disponível para o usuário de seus scripts
- Aliases tornam seu código mais difícil de ler e manter