Megosztás a következőn keresztül:


Az Azure CLI alias bővítményének használata

Az alias bővítménnyel a felhasználók egyéni parancsokat határozhatnak meg az Azure CLI-ben a meglévő parancsok használatával. Az aliasok egyszerűbbé teszik a munkafolyamatokat azáltal, hogy lehetővé teszik a hivatkozások használatát. A Jinja2 sablonmotor az Azure CLI-aliasokat használja, és fejlett argumentumfeldolgozást kínál.

Megjegyzés:

Az Alias bővítmény nyilvános előzetes verzióként érhető el. A konfigurációs fájlok formátuma és a funkciók változhatnak.

Az alias bővítmény telepítése

Az alias bővítmény használatához minimálisan szükséges Azure CLI-verzió: 2.0.28. A parancssori felület verziójának ellenőrzéséhez futtassa az az --version parancsot. Ha frissítenie kell a telepítést, kövesse az Azure CLI telepítése című szakaszban leírt utasításokat.

Telepítse az aliaskiterjesztést az az extension add paranccsal.

az extension add --name alias

A bővítmény telepítését az az extension list paranccsal ellenőrizheti. Ha az alias bővítmény megfelelően települt, akkor szerepel a parancs kimenetében.

az extension list --output table --query '[].{Name:name}'
Name
------
alias

Az aliasbővítmény naprakészen tartása

Az alias bővítmény aktív fejlesztés alatt áll, és rendszeresen jelennek meg új verziók. Az új verziók telepítése nem történik meg a CLI frissítésekor. A bővítmény frissítéseit az az extension update paranccsal telepítheti.

az extension update --name alias

Azure CLI aliasainak kezelése

Az aliasbővítmény lehetővé aliasok létrehozását és kezelését egyéb parancssori felületi parancsok számára. Az elérhető parancsok és a paraméterekkel kapcsolatos részletek megtekintéséhez futtassa az aliasparancsot a --help argumentummal.

az alias --help

Egyszerű aliasparancsok létrehozása

Az aliasok egyik funkciója a meglévő parancscsoportok vagy -nevek lerövidítése. A group parancscsoportot például lerövidítheti rg névre, a list parancsot pedig ls értékre.

az alias create --name rg --command group
az alias create --name ls --command list

Az újonnan definiált aliasok bárhol használhatók, ahol a definíciójuk is megtalálható.

az rg list
az rg ls
az vm ls

Ne szerepeljen az az alias parancsban.

Az aliasok teljes parancsok hivatkozásaként is használhatók. A következő példa az elérhető erőforráscsoportokat és a helyüket sorolja fel táblázatos kimenetben:

az alias create --name ls-groups --command "group list --query '[].{Name:name, Location:location}' --output table"

Az ls-groups most már ugyanúgy futtatható, mint bármilyen más parancssori felületi parancs.

az ls-groups

Aliasparancs létrehozása argumentumokkal

Pozícióargumentumokat is hozzáadhat az aliasparancsokhoz, ha a következőképpen belefoglalja őket az aliasnévbe: {{ arg_name }}. A zárójelek közötti szóköz szükséges.

az alias create --name "alias_name {{ arg1 }} {{ arg2 }} ..." --command "invoke_including_args"

A következő példaalias bemutatja, hogyan használhat pozícióargumentumokat egy virtuális gép nyilvános IP-címének lekérdezéséhez.

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"

A parancs futtatásakor értékeket rendel hozzá a pozícióargumentumokhoz.

az get-vm-ip MyResourceGroup MyVM

Az aliasnévvel rendelkező parancsokban környezeti változókat is használhat, amelyeket a rendszer a futásidőben értékel ki. A következő példa a create-rg aliast adja hozzá, amely egy erőforráscsoportot hoz létre az eastus régióban, valamint hozzáad egy owner címkét. Ehhez a címkéhez a USER helyi környezeti változó értékét rendeli hozzá a rendszer.

az alias create \
    --name "create-rg {{ groupName }}" \
    --command "group create --name {{ groupName }} --location eastus --tags owner=\$USER"

A környezeti változóknak az alias parancsán belüli regisztrálásához a $ dollárjel előtt escape karakternek kell állnia.

Argumentumok feldolgozása Jinja2-sablonokkal

A Jinja2 végrehajtja az argumentum-helyettesítést az aliaskiterjesztésben. A Jinja2-sablonok lehetővé teszik az argumentumok módosítását.

A Jinja2-sablonokkal olyan aliasokat írhat, amelyek az alapul szolgáló parancstól eltérő típusú argumentumokat is tudnak használni. Létrehozhat például egy olyan aliast, amely egy tároló URL-címét tartalmazza. A rendszer elemzi ezt az URL-címet, majd átadja a fiók és a tároló nevét a tárolási parancsnak.

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] }}"

További információ a Jinja2 sablonmotorról: Jinja2-dokumentáció.

Aliaskonfigurációs fájl

Az aliasok létrehozásának és módosításának másik módja az aliaskonfigurációs fájl módosítása. Az Alias-parancsdefiníciókat a rendszer egy konfigurációs fájlba írja, amely itt található: $AZURE_CONFIG_DIR/alias. Az AZURE_CONFIG_DIR alapértelmezett értéke macOS és Linux rendszereken $HOME/.azure, Windowson pedig %USERPROFILE%\.azure. Az aliaskonfigurációs fájlok INI fájlformátumban íródnak. Az aliasparancsok formátuma:

[alias_name]
command = invoked_commands

A pozícióargumentumokkal rendelkező aliasok esetében az aliasparancsok formátuma:

[alias_name {{ arg1 }} {{ arg2 }} ...]
command = invoked_commands_including_args

Aliasparancs létrehozása argumentumokkal az aliaskonfigurációs fájl segítségével

A következő példa egy argumentumokkal rendelkező parancshoz tartozó aliast mutat be. Ez a parancs lekéri egy virtuális gép nyilvános IP-címét. Az aliasnévvel rendelkező parancsoknak egyetlen sorban kell lenniük, és az aliasnévben szereplő összes argumentumot használniuk kell.

[get-vm-ip {{ resourceGroup }} {{ vmName }}]
command = vm list-ip-addresses --resource-group {{ resourceGroup }} --name {{ vmName }} --query [0].virtualMachine.network.publicIpAddresses[0].ipAddress

Az alias bővítmény eltávolítása

A bővítményt az az extension remove paranccsal távolíthatja el.

az extension remove --name alias

Ha azért távolítja el a bővítményt, mert hibát vagy egyéb problémát tapasztalt, jelentse be a GitHubon, hogy kijavíthassuk.