Especificar valores em comandos da CLI do AzureSpecifying values in Azure CLI commands

Além de especificar valores diretamente em um comando, você pode fornecer valores de várias maneiras:In addition to specifying values directly in a command, you can provide values in several ways:

  • Usar variáveis do shellUse shell variables
  • Definir uma assinatura para uso em vários comandosSet a subscription for use in multiple commands
  • Criar valores padrão para alguns parâmetrosCreate default values for some parameters
  • Usar valores persistentes para alguns parâmetrosUse persistent values for some parameters

Este artigo aborda várias maneiras de especificar valores em comandos da CLI do Azure.This article discusses various ways to specify values in Azure CLI commands.

Pré-requisitosPrerequisites

  • Use o Azure Cloud Shell usando o ambiente bash.Use Azure Cloud Shell using the bash environment.

    Inicie o Cloud Shell em uma nova janelaLaunch Cloud Shell in a new window

  • Se preferir, instale a CLI do Azure para executar comandos de referência da CLI.If you prefer, install the Azure CLI to run CLI reference commands.

    • Se estiver usando uma instalação local, entre com a CLI do Azure usando o comando az login.If you're using a local install, sign in with Azure CLI by using the az login command. Para concluir o processo de autenticação, siga as etapas exibidas no terminal.To finish the authentication process, follow the steps displayed in your terminal. Confira Entrar com a CLI do Azure para obter outras opções de entrada.See Sign in with Azure CLI for additional sign-in options.
    • Quando solicitado, instale as extensões da CLI do Azure no primeiro uso.When you're prompted, install Azure CLI extensions on first use. Para obter mais informações sobre extensões, confira Usar extensões com a CLI do Azure.For more information about extensions, see Use extensions with Azure CLI.
    • Execute az version para localizar a versão e as bibliotecas dependentes que estão instaladas.Run az version to find the version and dependent libraries that are installed. Para fazer a atualização para a versão mais recente, execute az upgrade.To upgrade to the latest version, run az upgrade.

Usar variáveis do shellUse shell variables

A CLI do Azure é executada em um shell.Azure CLI runs in a shell. Este artigo usa o Bash.This article uses Bash. Para obter informações sobre outros shells, confira Usar a CLI do Azure efetivamente.For information about other shells, see Use Azure CLI effectively. Você pode usar variáveis no Bash para passar valores de parâmetros para comandos.You can use variables in Bash to pass values for parameters to commands. O uso de variáveis também permite a reutilização de comandos, em partes ou em scripts.Using variables also allows reuse of commands, either piecemeal or in scripts.

Este exemplo cria um disco de armazenamento do mesmo tipo que o disco de armazenamento em uma máquina virtual existente.This example creates a new storage disk of the same type as the storage disk on an existing virtual machine.

# 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 atribui valores a variáveis que são reutilizadas, como MyResourceGroup.This example assigns values to variables that are reused, like MyResourceGroup. Um comando obtém um valor a ser atribuído a osType.A command gets a value to assign to osType.

Quando você atribui um valor a uma variável de outro comando, verifique se o comando usa um formato de saída compatível.When you assign a value to a variable from another command, be sure that the command uses a compatible output format. O comando az vm get-instance-view usa o formato de saída tsv.The az vm get-instance-view command uses the tsv output format. Essa opção retorna valores sem formatação extra, chaves ou outros símbolos.This option returns values without extra formatting, keys, or other symbols. Alguns formatos de saída incluem estrutura ou caracteres como aspas.Some output formats include structure or characters like quotation marks. Para obter mais informações, confira Formatos de saída para comandos da CLI do Azure.For more information, see Output formats for Azure CLI commands.

Neste exemplo, a variável MySubscription precisa estar entre aspas.In this example, the MySubscription variable must be in quotation marks. O valor dela contém espaços, que o comando não pode analisar.Its value contains spaces, which the command can't parse. Se você trabalhar apenas com IDs de assinatura, não precisará usar aspas.If you work only with subscription IDs, you don't need to use quotation marks.

Definir uma assinaturaSet a subscription

Muitos comandos exigem uma assinatura específica.Many commands require a specific subscription. Existem recursos do Azure em grupos de recursos, que existem em assinaturas.Azure resources exist in resource groups, which exist in subscriptions. A CLI do Azure usa uma assinatura padrão quando você está em uma sessão.Azure CLI uses a default subscription when you are in a session. Para ver o seu valor de assinatura atual, execute o comando az account show:To see your current subscription value, run the az account show command:

az account show --output table

Você poderia ter acesso a apenas uma assinatura.You might have access to only one subscription. Para obter mais informações, confira Usar assinaturas do Azure com a CLI do Azure Você pode usar o comando az account set para definir sua assinatura atual:For more information, see Use Azure subscriptions with Azure CLI You can use the az account set command to set your current subscription:

az account set --subscription "My Demos"

Depois de definir sua assinatura, você pode omitir o parâmetro --Subscription.After you set your subscription, you can omit --Subscription parameter. Para obter mais informações, confira Usar assinaturas do Azure com a CLI do Azure.For more information, see Use Azure subscriptions with Azure CLI.

Criar valores padrãoCreate default values

Você pode definir valores para alguns parâmetros usando o comando az config set.You can set values for some parameters by using the az config set command. Este exemplo define um grupo de recursos padrão:This example sets a default resource group:

az config set defaults.group=ContosoRGforVM

Depois de executar esse comando, você poderá executar o seguinte comando para criar uma conta de armazenamento no grupo de recursos ContosoRGforVM:After running this command, you can run the following command to create a storage account in the ContosoRGforVM resource group:

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

Observe que não há nenhum grupo de recursos especificado no comando.Notice that there's no resource group specified in the command. Para obter mais informações, confira Definir um grupo de recursos padrão.For more information, see Set a default resource group.

Dica

Os comandos que obtêm valores para parâmetros de maneiras diferentes podem ser confusos.Commands getting values for parameters in different ways can be confusing. Se um comando der um resultado inesperado, como a impossibilidade de localizar um grupo de recursos, pode haver um valor padrão.If a command gives an unexpected result, such as not being able to find a resource group, there may be a default value.

Se você encontrar um erro, execute o comando novamente com o parâmetro e o valor especificado.If you encounter an error, run the command again with the parameter and value specified. Um valor explícito para um parâmetro sempre tem precedência sobre outras opções.An explicit value for a parameter always takes precedence over other options.

Você pode especificar valores para vários parâmetros dessa maneira.You can specify values for several parameters this way. Para obter mais informações, confira a Configuração da CLI do Azure.For more information, see Azure CLI configuration.

Usar valores persistentesUse persistent values

Os valores de parâmetros persistentes permitem que você especifique um valor apenas uma vez.Persisted parameter values allow you to specify a value only once. Se você estiver executando várias ações relacionadas em um grupo de recursos, não precisará especificar esse grupo repetidamente.If you're doing several related actions in a resource group, you don't have to specify that group repeatedly.

Execute este comando para persistir um valor de parâmetro:Run this command to persist a parameter value:

az config param-persist on

Depois de ativar a persistência, crie um grupo de recursos:After turning on persistence, create a resource group:

az group create --name ContosoStorageRG --location eastus

Desde que a persistência esteja ativada, você poderá deixar o parâmetro --resource-group fora dos comandos futuros.As long as persistence is on, your can leave the --resource-group parameter out of future commands. O seguinte comando cria uma conta de armazenamento no grupo de recursos ContosoStorageRG:The following command creates a storage account in the ContosoStorageRG resource group:

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

Para obter mais informações, confira o Parâmetro persistente da CLI do Azure.For more information, see Azure CLI persisted parameter.

Limpar os recursosClean up resources

Se você criou recursos para experimentar qualquer um dos comandos neste artigo, você pode removê-los usando o comando az group delete:If you created resources to try any of the commands in this article, you can remove them by using the az group delete command:

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

Esse comando remove o grupo e todos os recursos que ele contém ao mesmo tempo.This command removes the group and all the resources that it contains at once.

Remova os parâmetros persistentes executando o comando az config param-persist delete:You can remove the persistent parameters by running the az config param-persist delete command:

az config param-persist delete --all

Próximas etapasNext steps