Sdílet prostřednictvím


Použití aliasů

Alias je alternativní název nebo zkrácený název rutiny nebo pro prvek příkazu, jako je funkce, skript, soubor nebo spustitelný soubor. Příkaz můžete spustit pomocí aliasu místo názvu spustitelného souboru.

Správa aliasů příkazů

PowerShell poskytuje rutiny pro správu aliasů příkazů. Následující příkaz ukazuje rutiny, které spravují aliasy.

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

Další informace viz about_Aliases.

Pomocí rutiny Get-Alias zobrazíte seznam aliasů dostupných ve vašem prostředí. Pokud chcete zobrazit seznam aliasů pro jednu rutinu, použijte parametr Definition a zadejte název spustitelného souboru.

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

Pokud chcete získat definici jednoho aliasu, použijte parametr Name .

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

K vytvoření aliasu Set-Alias použijte příkaz. Můžete vytvářet aliasy pro rutiny, funkce, skripty a nativní spustitelné soubory.

Set-Alias -Name np -Value Notepad.exe
Set-Alias -Name cmpo  -Value Compare-Object

Aliasy kompatibility ve Windows

PowerShell má několik aliasů, které umožňují unixům a cmd.exe uživatelům používat známé příkazy ve Windows. Následující tabulka obsahuje běžné příkazy, související rutinu PowerShellu a alias PowerShellu:

Příkazové prostředí Windows Unixový příkaz Rutina PowerShellu Alias PowerShellu
cd, chdir cd Set-Location sl, , cdchdir
cls clear Clear-Host cls clear
copy cp Copy-Item cpi, , cpcopy
del, erase, , rdrmdir rm Remove-Item ri, del, erase, rd, , rmrmdir
dir ls Get-ChildItem gci, , dirls
echo echo Write-Output write echo
md mkdir New-Item ni
move mv Move-Item mi, , movemv
popd popd Pop-Location popd
pwd Get-Location gl, , pwd$PWD
pushd pushd Push-Location pushd
ren mv Rename-Item rni, ren
type cat Get-Content gc, , cattype

Poznámka:

Aliasy v této tabulce jsou specifické pro Windows. Některé aliasy nejsou dostupné na jiných platformách, aby existující nativní příkaz fungoval v relaci PowerShellu. Na příklad, ls není definován jako alias PowerShellu v systému macOS nebo Linux, takže PowerShell spustí nativní příkaz namísto Get-ChildItem.

Vytváření alternativních názvů pro příkazy s parametry

Alias můžete přiřadit rutině, skriptu, funkci nebo spustitelnému souboru. Na rozdíl od některých unixových shellů nemůže definice aliasu obsahovat parametry. Můžete například přiřadit alias rutině Get-Eventlog , ale k příkazu nemůžete přiřadit alias Get-Eventlog -LogName System . Je nutné vytvořit funkci, která obsahuje příkaz s parametry.

Další informace viz about_Aliases.

Aliasy a zkrácené názvy parametrů

PowerShell také poskytuje způsoby, jak vytvořit zkratkové názvy parametrů. Aliasy parametrů se definují pomocí atributu Alias při deklaraci parametru. Aliasy parametrů nelze definovat pomocí *-Alias cmdletů.

Další informace najdete v dokumentaci k atributu Alias .

Kromě aliasů parametrů umožňuje PowerShell zadat název parametru pomocí nejmenších znaků potřebných k jednoznačné identifikaci parametru. Například rutina Get-ChildItem má parametry Recurse a ReadOnly . Pokud chcete jednoznačně identifikovat parametr Recurse, stačí zadat -Recpouze . Pokud ho zkombinujete s aliasem příkazu, Get-ChildItem -Recurse můžete ho zkrátit na dir -Rec.

Nepoužívejte aliasy ve skriptech

Aliasy jsou funkce usnadnění, která se má používat interaktivně v prostředí. Ve skriptech byste měli vždy používat úplný název příkazů a parametrů.

  • Aliasy můžete odstranit nebo předefinovat ve skriptu profilu.
  • Aliasy, které definujete ve svém profilu, nejsou dostupné jiným uživatelům.
  • Aliasy znesnadní čtení a údržbu kódu