Freigeben über


Verwendung von Aliasen

Ein Alias ist ein alternativer Name oder Kurzname für ein Cmdlet oder für ein Befehlselement, z. B. eine Funktion, ein Skript, eine Datei oder eine ausführbare Datei. Sie können den Befehl mit dem Alias anstelle des ausführbaren Namens ausführen.

Verwalten von Befehlsaliasen

PowerShell stellt Cmdlets zum Verwalten von Befehlsaliasen bereit. Der folgende Befehl zeigt die Cmdlets, die Aliase verwalten.

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

Weitere Informationen finden Sie unter about_Aliases.

Verwenden Sie das Cmdlet "Get-Alias ", um die in Ihrer Umgebung verfügbaren Aliase aufzulisten. Um die Aliase für ein einzelnes Cmdlet aufzulisten, verwenden Sie den Definition-Parameter , und geben Sie den namen der ausführbaren Datei an.

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

Verwenden Sie den Parameter Name , um die Definition eines einzelnen Alias abzurufen.

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

Verwenden Sie den Set-Alias Befehl, um einen Alias zu erstellen. Sie können Aliase für Cmdlets, Funktionen, Skripts und systemeigene ausführbare Dateien erstellen.

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

Kompatibilitätsaliasen in Windows

PowerShell verfügt über mehrere Aliase, mit denen Unix und cmd.exe Benutzer vertraute Befehle in Windows verwenden können. Die folgende Tabelle enthält allgemeine Befehle, das zugehörige PowerShell-Cmdlet und den PowerShell-Alias:

Windows-Befehlsshell Unix-Befehl PowerShell-Cmdlet PowerShell-Alias
cd, chdir cd Set-Location sl, cdchdir
cls clear Clear-Host cls clear
copy cp Copy-Item cpi, cpcopy
del, , eraserdrmdir rm Remove-Item ri, , delerase, rd, , rmrmdir
dir ls Get-ChildItem gci, dirls
echo echo Write-Output write echo
md mkdir New-Item ni
move mv Move-Item mi, movemi
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, cattype

Hinweis

Die Aliase in dieser Tabelle sind Windows-spezifisch. Einige Aliase sind auf anderen Plattformen nicht verfügbar. Dies ist das Zulassen, dass der systemeigene Befehl in einer PowerShell-Sitzung funktioniert. Ist beispielsweise nicht als PowerShell-Alias unter macOS oder Linux definiert, ls sodass der systemeigene Befehl anstelle von Get-ChildItem.

Erstellen alternativer Namen für Befehle mit Parametern

Sie können einem Cmdlet, skript, einer Funktion oder einer ausführbaren Datei einen Alias zuweisen. Im Gegensatz zu einigen Unix-Shells können Sie einem Befehl mit Parametern keinen Alias zuweisen. Sie können beispielsweise dem Cmdlet Get-Eventlog einen Alias zuweisen, dem Befehl Get-Eventlog -LogName System jedoch keinen Alias zuweisen. Sie müssen eine Funktion erstellen, die den Befehl mit Parametern enthält.

Weitere Informationen finden Sie unter about_Aliases.

Parameteraliasen und Kurznamen

PowerShell bietet auch Möglichkeiten zum Erstellen von Kurznamen für Parameter. Parameteraliasen werden mithilfe des Alias Attributs definiert, wenn Sie den Parameter deklarieren. Diese können nicht mithilfe der *-Alias Cmdlets definiert werden.

Weitere Informationen finden Sie in der Dokumentation zum Alias-Attribut .

Zusätzlich zu Parameteraliasen können Sie in PowerShell den Parameternamen mit den wenigen Zeichen angeben, die zum eindeutigen Identifizieren des Parameters erforderlich sind. Beispielsweise verfügt das Get-ChildItem Cmdlet über die Parameter "Recurse " und "ReadOnly" . Um den Recurse-Parameter eindeutig zu identifizieren, müssen Sie nur angeben -Rec. Wenn Sie dies mit dem Befehlsalias kombinieren, Get-ChildItem -Recurse kann auf dir -Rec.

Verwenden Von Aliasen in Skripts nicht

Aliase sind ein Komfortfeature, das interaktiv in der Shell verwendet werden kann. Sie sollten immer die vollständigen Befehls- und Parameternamen in Ihren Skripts verwenden.

  • Aliase können in einem Profilskript gelöscht oder neu definiert werden
  • Alle von Ihnen definierten Aliase stehen dem Benutzer Ihrer Skripts möglicherweise nicht zur Verfügung.
  • Aliase erschweren das Lesen und Verwalten von Code