Azure CLI diğer ad uzantısını kullanma

Diğer ad uzantısı, kullanıcıların mevcut komutları kullanarak Azure CLI için özel komutlar tanımlamasına olanak tanır. Diğer adlar, kısayollara izin vererek iş akışınızı basit tutmaya yardımcı olur. Jinja2 şablon altyapısı, Azure CLI diğer adlarını destekler ve gelişmiş bağımsız değişken işleme sunar.

Uyarı

Alias Uzantısı genel önizleme aşamasındadır. Özellikler ve yapılandırma dosyası biçimi değişebilir.

Takma ad uzantısını yükleyin

Diğer ad uzantısını kullanmak için gereken en düşük Azure CLI sürümü 2.0.28'dir. CLI sürümünüzü denetlemek için komutunu çalıştırın az --version. Yüklemenizi güncelleştirmeniz gerekiyorsa Azure CLI'yı yükleme başlığındaki yönergeleri izleyin.

az extension add komutuyla diğer ad uzantısını yükleyin.

az extension add --name alias

az extension list ile uzantının yüklendiğini doğrulayın. Eğer takma ad uzantısı düzgün yüklenirse, komut çıktısında görünür.

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

Diğer ad uzantısını -date up-totutma

Takma ad uzantısı, aktif olarak geliştirilmeye devam etmektedir ve yeni sürümleri düzenli olarak yayınlanmaktadır. Ancak, CLI'yı güncelleştirdiğinizde yeni sürümler yüklenmez. az extension update ile uzantı güncelleştirmelerini yükleyin.

az extension update --name alias

Azure CLI için diğer adları yönetme

Takma ad uzantısı, diğer CLI komutları için takma adlar oluşturmanıza ve yönetmenize olanak tanır. Tüm kullanılabilir komutları ve parametre ayrıntılarını görüntülemek için --help ile diğer ad komutunu çalıştırın.

az alias --help

Basit takma ad komutları oluşturma

Diğer adların bir kullanımı, mevcut komut gruplarını veya komut adlarını kısaltmaktır. Örneğin, komut grubunu group olarak ve rg komutunu listolarak kısaltabilirsinizls.

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

Artık tanımlarının geçerli olduğu her yerde bu yeni tanımlanan takma adları kullanabilirsiniz.

az rg list
az rg ls
az vm ls

az diğer ad komutunun bir parçası olarak eklemeyin.

Takma adlar, tam komutlar için kısayollar da olabilir. Sonraki örnek, tablo çıkışında kullanılabilir kaynak gruplarını ve bunların konumlarını listeler:

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

Artık ls-groups diğer CLI komutları gibi çalıştırılabilir.

az ls-groups

Bağımsız değişkenlerle bir diğer ad komutu oluştur.

Alias komutuna konumsal bağımsız değişkenler de ekleyebilirsiniz, bu bağımsız değişkenleri takma ad ismi olarak {{ arg_name }} ekleyerek belirtebilirsiniz. Küme ayraçlarının içindeki boşluk gereklidir.

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

Sonraki örnek takma ad, bir sanal makinenin genel IP adresini almak için konumsal bağımsız değişkenlerin nasıl kullanılacağını gösterir.

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"

Bu komutu çalıştırırken, konumsal bağımsız değişkenlere değerler verirsiniz.

az get-vm-ip MyResourceGroup MyVM

Diğer ad komutlarında, çalışma zamanında değerlendirilen ortam değişkenlerini de kullanabilirsiniz. Sonraki örnek, create-rg içinde bir kaynak grubu oluşturan ve bir eastus etiketi ekleyen owner adı takma adını ekler. Bu etikete yerel ortam değişkeninin USERdeğeri atanır.

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

Ortam değişkenlerini diğer ad komutuna kaydetmek için dolar işaretinden ($ ) kaçmalısınız.

Jinja2 şablonlarını kullanarak bağımsız değişkenleri işleme

Jinja2 takma ad uzantısında argüman değiştirme işlemi gerçekleştirir. Jinja2 şablonları, bağımsız değişkenlerin manipülesine olanak sağlar.

Jinja2 şablonlarıyla, temel komuttan farklı türde bağımsız değişkenler alan takma adlar yazabilirsiniz. Örneğin, depolama URL'si alan bir diğer ad oluşturabilirsiniz. Ardından bu URL ayrıştırılarak hesap ve kapsayıcı adları depolama komutuna geçirilir.

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

Jinja2 şablon altyapısı hakkında bilgi edinmek için Jinja2 belgelerine bakın.

Diğer ad yapılandırma dosyası

Takma ad oluşturmanın ve değiştirmenin bir diğer yolu da alias yapılandırma dosyasını değiştirmektir. Diğer ad komut tanımları, $AZURE_CONFIG_DIR/alias yerinde bulunan bir yapılandırma dosyasına yazılır. varsayılan değeri AZURE_CONFIG_DIR macOS ve Linux'ta ve $HOME/.azure Windows'tadır%USERPROFILE%\.azure. Takma ad yapılandırma dosyası, INI yapılandırma dosyası formatında yazılmıştır. Diğer ad komutlarının biçimi şöyledir:

[alias_name]
command = invoked_commands

Konumsal argümanlara sahip takma adlar için takma ad komutlarının biçimi şöyledir:

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

Diğer ad yapılandırma dosyası aracılığıyla argümanlarla bir diğer ad komutu oluşturun.

Sonraki örnekte bağımsız değişkenler içeren bir komutun diğer adı gösterilir. Bu komut bir VM için genel IP adresini alır. Diğer ad kullanılan komutların tümü tek bir satırda olmalı ve diğer addaki tüm bağımsız değişkenleri kullanmalıdır.

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

Takma ad uzantısını kaldır

Uzantıyı kaldırmak için az extension remove komutunu kullanın.

az extension remove --name alias

Uzantıyla ilgili bir hata veya başka bir sorun nedeniyle kaldırdıysanız, bir düzeltme sağlayabilmemiz için bir GitHub sorunu oluşturun.