What is the Azure CLI? (original) (raw)
The Azure Command-Line Interface (CLI) is a cross-platform command-line tool to connect to Azure and execute administrative commands on Azure resources. It allows the execution of commands through a terminal using interactive command-line prompts or a script.
For interactive use, you first launch a shell such as cmd.exe on Windows, or Bash on Linux or macOS, and then issue a command at the shell prompt. To automate repetitive tasks, you assemble the CLI commands into a shell script using the script syntax of your chosen shell, and then you execute the script.
You can install the Azure CLI locally on Linux, macOS, or Windows computers. It can also be used from a browser through the Azure Cloud Shell or run from inside a Docker container.
Current Version
The current version of the Azure CLI is 2.87.0. For information about the latest release, see the release notes. To find your installed version and see if you need to update, run az version.
Authentication
Azure CLI supports several authentication methods. For detailed information about authenticating to Azure from the Azure CLI, see Sign in with Azure CLI.
Command reference design
The Azure CLI syntax follows a simple reference name - command - parameter - parameter valuepattern. For example, switching between subscriptions is often a common task. Here's the syntax.
az account set --subscription "my subscription name"
Another common use of the Azure CLI is managing role assignments.
az role assignment create --assignee servicePrincipalName --role Reader --scope /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName
az role assignment delete --assignee userSign-inName --role Contributor
For more information on managing subscriptions, see Manage subscriptions with Azure CLI. SeeCreate an Azure service principal with the Azure CLI for an in-depth tutorial on managing service principals and role assignments.
PowerShell syntax comparison
Choose the right command-line tool explains the difference between tools and environmentswith an emphasis on the Azure CLI and Azure PowerShell. It also gives manyside-by-side command comparisons. Here are two examples:
| Command | Azure CLI | Azure PowerShell |
|---|---|---|
| Create Resource Group | az group create --name --location eastus | New-AzResourceGroup -Name -Location eastus |
| Create Azure Storage Account | az storage account create --name --resource-group --location eastus --sku Standard_LRS --kind StorageV2 | New-AzStorageAccount -Name -ResourceGroupName -Location eastus -SkuName Standard_LRS -Kind StorageV2 |
For Azure CLI syntax comparisons between Bash and PowerShell environments, seeLearn Azure CLI syntax differences in Bash, PowerShell and Cmd.
Output formats
The Azure CLI uses JSON as its default output format, but offers other formats as described inOutput formats for Azure CLI commands. Use the --output parameter to format Azure CLI command results. Here's an example:
az account list --output table
Set your default output by setting the output configuration property as described inAzure CLI configuration.
az config set core.output=jsonc
Data collection
Azure CLI collects telemetry data by default. Microsoft aggregates collected data to identify patterns of usage to identify common issues and to improve the experience of Azure CLI. Microsoft Azure CLI doesn't collect any private or personal data. For example, the usage data helps identify issues such as commands with low success and helps prioritize our work.
While we appreciate the insights this data provides, we also understand that not everyone wants to send usage data. You can disable data collection with theaz config set core.collect_telemetry=false command. You can also read our privacy statementto learn more.