Mit dem als Aliasing bezeichneten Verfahren können Benutzer in Windows PowerShell mit alternativen Namen auf Befehle verweisen. Mithilfe von Aliasing können Benutzer mit Erfahrungen von anderen Shells häufig verwendete Befehlsnamen, die sie bereits kennen, für das Ausführen ähnlicher Vorgänge in Windows PowerShell wiederverwenden. Windows PowerShell-Aliase werden im vorliegenden Dokument nicht im Detail beschrieben, können jedoch trotzdem von Beginn an jederzeit in Windows PowerShell verwendet werden.
Beim Aliasing wird einem Befehl ein von Ihnen eingegebener Befehlsname zugeordnet. Windows PowerShell verfügt z. B. über die interne Funktion Clear-Host, mit der das Ausgabefenster geleert wird. Wenn Sie an der Eingabeaufforderung die Befehle cls oder clear eingeben, interpretiert Windows PowerShell diese als Aliase für die Funktion Clear-Host und führt die Funktion Clear-Host aus.
Dieses Feature erleichtert Benutzern das Erlernen von Windows PowerShell. Benutzer von "Cmd.exe" und UNIX verfügen meist bereits über ein großes Repertoire an Befehlsnamen. Obwohl die entsprechenden Windows PowerShell-Befehle möglicherweise keine identischen Ergebnisse liefern, sind diese meist ausreichend ähnlich, dass die Benutzer mit diesen arbeiten können, ohne zunächst die Windows PowerShell-Namen lernen zu müssen. Des Weiteren ist es beim Erlernen einer neuen Shell häufig ärgerlich, wenn der Benutzer bereits mit einer anderen Shell vertraut ist und sein "Tippgedächtnis" zu Fehlern führt. Wenn Sie "Cmd.exe" schon seit Jahren verwenden, geben Sie zum Leeren eines mit Ausgaben gefüllten Bildschirms wohl instinktiv den Befehl cls ein und drücken die EINGABETASTE. Ohne den Alias der Clear-Host-Funktion erhalten Sie in Windows PowerShell einfach die Fehlermeldung "'cls' is not recognized as a cmdlet, function, operable program, or script file." und wissen nicht, wie Sie die Ausgabe löschen sollen.
Im Folgenden finden Sie eine kurze Auflistung häufig verwendeter "Cmd.exe"- und UNIX-Befehle, die Sie in Windows PowerShell verwenden können:
cat |
dir |
mount |
rm |
cd |
echo |
move |
rmdir |
chdir |
erase |
popd |
sleep |
clear |
h |
ps |
sort |
cls |
history |
pushd |
tee |
copy |
kill |
pwd |
type |
del |
lp |
r |
write |
diff |
ls |
ren |
|
Wenn Sie einen dieser Befehle verwenden und den tatsächlichen Namen des systemeigenen Windows PowerShell-Befehls erfahren möchten, verwenden Sie den Befehl Get-Alias:
PS> Get-Alias cls CommandType Name Definition ----------- ---- ---------- Alias cls Clear-Host
Die Verwendung von Aliasen wird im vorliegenden Windows PowerShell-Benutzerhandbuch weitgehend vermieden, um die Beispiele gut verständlich zu halten. Kenntnisse über Aliase sind aber auch zum Anfang hilfreich, wenn Sie mit Windows PowerShell-Codeausschnitten aus einer anderen Quelle arbeiten oder eigene Aliase definieren möchten. Im restlichen Teil dieses Abschnitts werden die Standardaliase und die Vorgehensweise zum Definieren eigener Aliase beschrieben.
Interpretieren von Standardaliasen
Im Gegensatz zu den oben beschriebenen Aliasen, die aus Gründen der Namenskompatibilität mit anderen Schnittstellen entwickelt wurden, dienen die integrierten Windows PowerShell-Aliase ausschließlich der Abkürzung. Diese abgekürzten Namen können schneller eingegeben werden, sie sind allerdings auch unverständlich, wenn Sie nicht wissen, worauf sie verweisen.
Bei Windows PowerShell wurde versucht, einen Kompromiss zwischen Verständlichkeit und Kürze zu finden, indem ein Satz von Standardaliasen bereitgestellt wird, die auf Abkürzungen bekannter Verben und Substantive beruhen. Somit können Sie einen Basissatz von Aliasen für häufig verwendete Cmdlets verwenden, die verständlich sind, wenn Sie die Abkürzungen kennen. Bei Standardaliasen werden z. B. das Verb Get mit g, das Verb Set mit s, das Substantiv Item mit i, das Substantiv Location mit l und das Substantiv "Command" mit cm abgekürzt.
Im Folgenden finden Sie ein kurzes Beispiel zur Veranschaulichung. Der Standardalias für Get-Item wird durch Kombination von g für "Get" mit i für "Item" gebildet: gi. Der Standardalias für Set-Item wird durch Kombination von s für "Set" mit i für "Item" gebildet: si. Der Standardalias für Get-Location wird durch Kombination von g für "Get" mit l für "Location" gebildet: gl. Der Standardalias für Set-Location wird durch Kombination von s für "Set" mit l für "Location" gebildet: sl. Der Standardalias für Get-Command wird durch Kombination von g für "Get" mit cm für "Command" gebildet: gcm. Es gibt kein Cmdlet "Set-Command", wenn es dieses jedoch gäbe, würde der Standardalias aus s für "Set" und cm für "Command" gebildet werden: scm. Zudem könnten Personen, die mit dem Windows PowerShell-Aliasing vertraut sind und scm lesen, daraus ableiten, dass dieser Alias auf Set-Command verweist.
Erstellen neuer Aliase
Mithilfe des Cmdlets "Set-Alias" können Sie eigene Aliase erstellen. Mit den folgenden Anweisungen erstellen Sie die in "Interpretieren von Standardaliasen" beschriebenen Standardaliase für Cmdlets:
Set-Alias -Name gi -Value Get-Item Set-Alias -Name si -Value Set-Item Set-Alias -Name gl -Value Get-Location Set-Alias -Name sl -Value Set-Location Set-Alias -Name gcm -Value Get-Command
Intern verwendet Windows PowerShell solche Befehle beim Start, diese Aliase können allerdings nicht geändert werden. Wenn Sie versuchen, einen dieser Befehle auszuführen, wird in einer Fehlermeldung angezeigt, dass der Alias nicht geändert werden kann. Beispiel:
PS> Set-Alias -Name gi -Value Get-Item
Set-Alias : Alias is not writeable because alias gi is read-only or constant and cannot be written to.
At line:1 char:10
+ Set-Alias <<<< -Name gi -Value Get-Item