Como usar variáveis nos comandos da CLI do Azure

Além de especificar valores diretamente em um comando, você pode fornecer valores de várias maneiras:

  • Usar variáveis de shell
  • Definir uma subscrição para utilização em vários comandos
  • Criar valores padrão para alguns parâmetros

Este artigo discute várias maneiras de especificar valores nos comandos da CLI do Azure.

Pré-requisitos

  • Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, consulte Guia de início rápido para Bash no Azure Cloud Shell.

  • Se preferir executar comandos de referência da CLI localmente, instale a CLI do Azure. Se estiver a utilizar o Windows ou macOS, considere executar a CLI do Azure num contentor Docker. Para obter mais informações, consulte Como executar a CLI do Azure em um contêiner do Docker.

    • Se estiver a utilizar uma instalação local, inicie sessão no CLI do Azure ao utilizar o comando az login. Para concluir o processo de autenticação, siga os passos apresentados no seu terminal. Para outras opções de entrada, consulte Entrar com a CLI do Azure.

    • Quando solicitado, instale a extensão da CLI do Azure na primeira utilização. Para obter mais informações sobre as extensões, veja Utilizar extensões com o CLI do Azure.

    • Execute o comando az version para localizar a versão e as bibliotecas dependentes instaladas. Para atualizar para a versão mais recente, execute o comando az upgrade.

Usar variáveis de shell

A CLI do Azure é executada em um shell. Este artigo usa Bash. Para obter informações sobre outros shells, consulte Usar a CLI do Azure de forma eficaz. Você pode usar variáveis no Bash para passar valores de parâmetros para comandos. O uso de variáveis com a CLI do Azure também permite a reutilização de comandos, seja de forma fragmentada ou em scripts.

Este exemplo cria um novo disco de armazenamento do mesmo tipo que o disco de armazenamento em uma máquina virtual existente.

# Bash script
# Assign values to variables
MyResourceGroup=ContosoRGforVM
MySubscription="Contoso subscription"
vmName=VM01

# Get a value for a variable based on an existing virtual machine
osType=$(az vm get-instance-view --resource-group $MyResourceGroup \
   --name $vmName --subscription "$MySubscription" \
   --query 'storageProfile.osDisk.osType' --output tsv)

# Create a disk of the same type by using the variable value
az disk create --resource-group $MyResourceGroup --name DestinationDisk --size-gb 20 --os-type $osType

Este exemplo mostra como atribuir valores a variáveis que são reutilizadas, como MyResourceGroup e osType. O comando az vm get-instance-view combinado com a consulta storageProfile.osDisk.osType retorna o tipo de sistema operacional do disco. Envolver o comando com $() atribui o valor de retorno do comando a osType. Para saber mais sobre --query as consultas JMESPath, consulte Como consultar a saída do comando CLI do Azure usando uma consulta JMESPath.

Ao atribuir um valor a uma variável de outro comando, certifique-se de que o comando usa um formato de saída compatível. O comando az vm get-instance-view usa o tsv formato de saída. Esta opção retorna valores sem formatação extra, chaves ou outros símbolos. Alguns formatos de saída incluem estrutura ou caracteres como aspas. Para obter mais informações, consulte Formatos de saída para comandos da CLI do Azure.

Neste exemplo, a variável MySubscription deve estar entre aspas. O valor da variável contém espaços, que o comando não pode analisar. Se você trabalha apenas com IDs de assinatura, não precisa usar aspas.

Definir uma subscrição

Muitos comandos requerem uma subscrição específica. Os recursos do Azure existem em grupos de recursos, que existem em assinaturas. A CLI do Azure usa uma assinatura padrão quando você está em uma sessão. Para ver o valor da sua subscrição atual, execute o comando az account show :

az account show --output table

Poderá ter acesso a apenas uma subscrição. Para obter mais informações, consulte Usar assinaturas do Azure com a CLI do Azure Você pode usar o comando az account set para definir sua assinatura atual:

az account set --subscription "My Demos"

Depois de definir sua assinatura, você pode omitir --Subscription o parâmetro. Para obter mais informações, consulte Usar assinaturas do Azure com a CLI do Azure.

Criar valores padrão

Você pode definir valores para alguns parâmetros usando o comando az config set . Este exemplo define um grupo de recursos padrão:

az config set defaults.group=ContosoRGforVM

Depois de executar esse comando, você pode executar o seguinte comando para criar uma conta de armazenamento no grupo de recursos ContosoRGforVM:

az storage account create --name storage135 --location eastus --sku Standard_LRS

Observe que não há nenhum grupo de recursos especificado no comando. Para obter mais informações, consulte Definir um grupo de recursos padrão.

Gorjeta

Comandos que obtêm valores para parâmetros de maneiras diferentes podem ser confusos. Se um comando der um resultado inesperado, como não ser capaz de localizar um grupo de recursos, pode haver um valor padrão.

Se você encontrar um erro, execute o comando novamente com o parâmetro e o valor especificados. Um valor explícito para um parâmetro sempre tem precedência sobre outras opções.

Você pode especificar valores para vários parâmetros dessa maneira. Para obter mais informações, consulte Configuração da CLI do Azure.

Clean up resources (Limpar recursos)

Se você criou recursos para tentar qualquer um dos comandos neste artigo, você pode removê-los usando o comando az group delete :

az group delete --name ContosoRGforVM
az group delete --name ContosoStorageRG

Este comando remove o grupo e todos os recursos que ele contém de uma só vez.

Consulte também