Verwenden der Azure CLI-Aliaserweiterung
Dank der Aliaserweiterung können Benutzer mithilfe von vorhandenen Befehlen benutzerdefinierte Befehle für die Azure CLI definieren. Aliase ermöglichen die Verwendung von Verknüpfungen und vereinfachen dadurch Ihren Workflow. Die Jinja2-Vorlagen-Engine treibt die Azure CLI-Aliase an und bietet eine erweiterte Argumentverarbeitung.
Hinweis
Die Aliaserweiterung ist als öffentliche Vorschauversion verfügbar. Die Funktionen und das Konfigurationsdateiformat können sich ändern.
Installieren der Aliaserweiterung
Damit Sie die Aliaserweiterung verwenden können, ist mindestens Version 2.0.28 der Azure CLI erforderlich. Führen Sie zum Überprüfen der CLI-Version az --version
aus. Falls Sie die Installation aktualisieren müssen, hilft Ihnen die Anleitung unter Installieren der Azure CLI weiter.
Installieren Sie die Aliaserweiterung mit dem Befehl az extension add.
az extension add --name alias
Überprüfen Sie die Installation der Erweiterung mithilfe von az extension list. Wenn die Aliaserweiterung ordnungsgemäß installiert wurde, ist sie in der Befehlsausgabe aufgeführt.
az extension list --output table --query '[].{Name:name}'
Name
------
alias
Sicherstellen, dass die Aliaserweiterung immer auf dem neuesten Stand ist
Die Aliaserweiterung befindet sich in der aktiven Entwicklung, und es werden regelmäßig neue Versionen veröffentlicht. Beim Aktualisieren der CLI werden keine neuen Versionen installiert. Installieren Sie die Updates für die Erweiterung mithilfe von az extension update.
az extension update --name alias
Verwalten von Aliasen für die Azure CLI
Die Aliaserweiterung ermöglicht das Erstellen und Verwalten von Aliasen für andere CLI-Befehle. Führen Sie den Aliasbefehl mit --help
aus, um alle verfügbaren Befehle und Parameterdetails anzuzeigen.
az alias --help
Erstellen einfacher Aliasbefehle
Zum einen werden Aliase zum Kürzen vorhandener Befehlsgruppen oder Befehlsnamen verwendet. Beispielsweise können Sie die Befehlsgruppe group
auf rg
und den Befehl list
auf ls
verkürzen.
az alias create --name rg --command group
az alias create --name ls --command list
Diese neu definierten Aliase können nun anstelle ihrer Definition verwendet werden.
az rg list
az rg ls
az vm ls
Nehmen Sie az
nicht in den Aliasbefehl auf.
Aliase können auch als Verknüpfungen für vollständige Befehle fungieren. Im nächsten Beispiel werden verfügbare Ressourcengruppen und ihre Speicherorte in der Tabellenausgabe aufgeführt:
az alias create --name ls-groups --command "group list --query '[].{Name:name, Location:location}' --output table"
ls-groups
kann nun wie jeder andere CLI-Befehl ausgeführt werden.
az ls-groups
Erstellen eines Aliasbefehls mit Argumenten
Sie können positionelle Argumente auch zu einem Aliasbefehl hinzufügen, indem Sie sie als {{ arg_name }}
in den Aliasnamen aufnehmen. Das Leerzeichen in den Klammern ist erforderlich.
az alias create --name "alias_name {{ arg1 }} {{ arg2 }} ..." --command "invoke_including_args"
Das nächste Beispiel zeigt, wie Sie mithilfe von positionellen Argumenten die öffentliche IP-Adresse für einen virtuellen Computer abrufen.
az alias create \
--name "get-vm-ip {{ resourceGroup }} {{ vmName }}" \
--command "vm list-ip-addresses --resource-group {{ resourceGroup }} --name {{ vmName }}
--query [0].virtualMachine.network.publicIpAddresses[0].ipAddress"
Beim Ausführen dieses Befehls übergeben Sie Werte an die positionellen Argumente.
az get-vm-ip MyResourceGroup MyVM
Sie können in Aliasbefehlen auch Umgebungsvariablen verwenden, die zur Laufzeit ausgewertet werden. Im nächsten Beispiel wird der Alias create-rg
hinzugefügt, der eine Ressourcengruppe in eastus
erstellt und ein owner
-Tag hinzufügt. Diesem Tag wird der Wert der lokalen Umgebungsvariablen USER
zugewiesen.
az alias create \
--name "create-rg {{ groupName }}" \
--command "group create --name {{ groupName }} --location eastus --tags owner=\$USER"
Zum Registrieren der Umgebungsvariablen im Befehl des Alias muss das Dollarzeichen ($
) mit Escapezeichen versehen werden.
Verarbeiten von Argumenten mithilfe von Jinja2-Vorlagen
Jinja2 führt die Argumentersetzung in der Aliaserweiterung aus. Jinja2-Vorlagen ermöglichen die Bearbeitung der Argumente.
Mit Jinja2-Vorlagen können Sie Aliase schreiben, die andere Argumenttypen akzeptieren als der zugrunde liegende Befehl. Beispielsweise können Sie einen Alias erstellen, der eine Speicher-URL übernimmt. Anschließend wird diese URL analysiert, um den Konto- und Containernamen an den Speicherbefehl zu übergeben.
az alias create \
--name 'storage-ls {{ url }}' \
--command "storage blob list
--account-name {{ url.replace('https://', '').split('.')[0] }}
--container-name {{ url.replace('https://', '').split('/')[1] }}"
Informationen zur Jinja2-Vorlagenengine finden Sie in der Jinja2-Dokumentation.
Aliaskonfigurationsdatei
Eine weitere Möglichkeit zum Erstellen und Ändern von Aliasen ist das Ändern der Aliaskonfigurationsdatei. Aliasbefehlsdefinitionen werden in eine Konfigurationsdatei unter $AZURE_CONFIG_DIR/alias
geschrieben. AZURE_CONFIG_DIR
hat standardmäßig den Wert $HOME/.azure
(macOS und Linux) bzw. %USERPROFILE%\.azure
(Windows). Die Aliaskonfigurationsdatei wird im INI-Konfigurationsdateiformat geschrieben. Das Format für Aliasbefehle lautet wie folgt:
[alias_name]
command = invoked_commands
Für Aliase, die positionelle Argumente enthalten, haben die Aliasbefehle das folgende Format:
[alias_name {{ arg1 }} {{ arg2 }} ...]
command = invoked_commands_including_args
Erstellen eines Aliasbefehls mit Argumenten über die Aliaskonfigurationsdatei
Das nächste Beispiel zeigt einen Alias für einen Befehl mit Argumenten. Dieser Befehl ruft die öffentliche IP-Adresse für einen virtuellen Computer ab. Aliasbefehle müssen sich in einer Zeile befinden und alle Argumente im Aliasnamen verwenden.
[get-vm-ip {{ resourceGroup }} {{ vmName }}]
command = vm list-ip-addresses --resource-group {{ resourceGroup }} --name {{ vmName }} --query [0].virtualMachine.network.publicIpAddresses[0].ipAddress
Deinstallieren der Aliaserweiterung
Verwenden Sie zum Deinstallieren der Erweiterung den Befehl az extension remove.
az extension remove --name alias
Falls Sie die Erweiterung aufgrund eines Fehlers oder eines anderen Problems deinstalliert haben, melden Sie das Problem über GitHub, damit wir eine Lösung bereitstellen können.