Uso de variables en comandos de la CLI de Azure
Además de especificar los valores directamente en un comando, puede proporcionar valores de varias maneras:
- Uso de variables de shell
- Establecimiento de una suscripción para su uso en varios comandos
- Creación de valores predeterminados para algunos parámetros
En este artículo se describen varias maneras de especificar valores en los comandos de la CLI de Azure.
Requisitos previos
Use el entorno de Bash en Azure Cloud Shell. Para más información, consulte Inicio rápido para Bash en Azure Cloud Shell.
Si prefiere ejecutar comandos de referencia de la CLI localmente, instale la CLI de Azure. Si utiliza Windows o macOS, considere la posibilidad de ejecutar la CLI de Azure en un contenedor Docker. Para más información, vea Ejecución de la CLI de Azure en un contenedor de Docker.
Si usa una instalación local, inicie sesión en la CLI de Azure mediante el comando az login. Siga los pasos que se muestran en el terminal para completar el proceso de autenticación. Para ver otras opciones de inicio de sesión, consulte Inicio de sesión con la CLI de Azure.
En caso de que se le solicite, instale las extensiones de la CLI de Azure la primera vez que la use. Para más información sobre las extensiones, consulte Uso de extensiones con la CLI de Azure.
Ejecute az version para buscar cuál es la versión y las bibliotecas dependientes que están instaladas. Para realizar la actualización a la versión más reciente, ejecute az upgrade.
Uso de variables de shell
La CLI de Azure se ejecuta en un shell. En este artículo se usa Bash. Para obtener información sobre otros lenguajes de scripting, consulte Elección de la herramienta de línea de comandos de Azure adecuada. Puede usar variables en Bash para pasar valores de parámetros a comandos. El uso de variables con la CLI de Azure también permite la reutilización de comandos, ya sea individualmente o en scripts.
En este ejemplo, se crea un nuevo disco de almacenamiento del mismo tipo que el disco de almacenamiento de una 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
En este ejemplo, se muestra cómo asignar valores a las variables que se reutilizan, como MyResourceGroup y osType. El uso combinado del comando az vm get-instance-view y la consulta storageProfile.osDisk.osType
devuelve el tipo de sistema operativo del disco. Además, el uso de $()
para ajustar el comando asigna el valor devuelto del comando a la variable osType
. Para más información sobre el formato de salida --query
y las consultas de JMESPath, consulte el artículo Cómo consultar la salida de un comando de la CLI de Azure mediante una consulta JMESPath.
Cuando asigne un valor a una variable desde otro comando, asegúrese de que el comando usa un formato de salida compatible. El comando az vm get-instance-view usa el formato de salida tsv
. Esta opción devuelve valores sin formato, claves u otros símbolos adicionales. Algunos formatos de salida incluyen una estructura o caracteres como comillas. Para más información, consulte Formatos de salida de los comandos de la CLI de Azure.
En este ejemplo, la variable MySubscription debe estar entre comillas. El valor de la variable contiene espacios, que el comando no puede analizar. Si solo trabaja con identificadores de suscripción, no es necesario usar comillas.
Establecimiento de una suscripción
Muchos comandos requieren una suscripción específica. Los recursos de Azure existen en los grupos de recursos, que existen en las suscripciones. La CLI de Azure usa una suscripción predeterminada cuando se está en una sesión. Para consultar el valor de su suscripción actual, ejecute el comando az account show:
az account show --output table
Es posible que tenga acceso solo a una suscripción. Para más información, consulte Uso de suscripciones de Azure con la CLI de Azure. Puede usar el comando az account set para establecer su suscripción actual:
az account set --subscription "My Demos"
Después de establecer la suscripción, puede omitir el parámetro --Subscription
. Para más información, consulte Uso de las suscripciones de Azure con la CLI de Azure.
Creación de valores predeterminados
Puede establecer valores para algunos parámetros usando el comando az config set. En este ejemplo se establece un grupo de recursos predeterminado:
az config set defaults.group=ContosoRGforVM
Después de ejecutar este comando, puede ejecutar el siguiente comando para crear una cuenta de almacenamiento en el grupo de recursos ContosoRGforVM:
az storage account create --name storage135 --location eastus --sku Standard_LRS
Tenga en cuenta que no hay ningún grupo de recursos especificado en el comando. Para más información, consulte Establecimiento de un grupo de recursos predeterminado.
Sugerencia
Los comandos que obtienen valores para los parámetros de distintas formas pueden crear confusión. Si un comando genera un resultado inesperado, por ejemplo, no encuentra un grupo de recursos, puede haber un valor predeterminado.
Si se produce un error, vuelva a ejecutar el comando con el parámetro y el valor especificados. El valor explícito de un parámetro siempre tiene prioridad sobre otras opciones.
Puede especificar valores para varios parámetros de esta forma. Para más información, consulte Configuración de la CLI de Azure.
Limpieza de recursos
Si ha creado recursos para probar alguno de los comandos de este artículo, puede eliminarlos usando el comando az group delete:
az group delete --name ContosoRGforVM
az group delete --name ContosoStorageRG
Este comando elimina el grupo y todos los recursos que contiene a la vez.