Azure CLI のエイリアス拡張機能The Azure CLI alias extension

エイリアス拡張機能を使用すると、既存のコマンドを使用して、Azure CLI のカスタム コマンドを定義することができます。The alias extension allows users to define custom commands for the Azure CLI by using existing commands. エイリアスではショートカットが使用できるので、ワークフローをシンプルに保つことができます。Aliases help keep your workflow simple by allowing shortcuts. エイリアスには Jinja2 テンプレート エンジンが使用されているため、高度な引数の処理にも対応できます。Since aliases are powered by the Jinja2 template engine, they even offer advanced argument processing.

注意

エイリアス拡張機能はパブリック プレビュー段階にあります。The Alias Extension is in public preview. 機能と構成ファイルの形式は変更される可能性があります。The features and configuration file format may change.

エイリアス拡張機能のインストールInstall the alias extension

エイリアス拡張機能を使用するために最低限必要な Azure CLI バージョンは 2.0.28 です。The minimum required Azure CLI version to use the alias extension is 2.0.28. CLI のバージョンを確認するには、az --version を実行してください。To check your CLI version, run az --version. インストールを更新する必要がある場合は、「Azure CLI のインストール」を参照してください。If you need to update your installation, follow the instructions in Install the Azure CLI.

az extension add コマンドを使用して拡張機能をインストールします。Install the extension with the az extension add command.

az extension add --name alias

az extension list を使用して拡張機能のインストールを確認します。Verify the installation of the extension with az extension list. エイリアス拡張機能が正しくインストールされていれば、コマンドの出力に表示されます。If the alias extension was installed properly, it's listed in the command output.

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

拡張機能を最新の状態に保つKeep the extension up-to-date

エイリアス拡張機能は活発に開発が行われており、新しいバージョンが定期的にリリースされます。The alias extension is under active development and new versions are released regularly. CLI を更新しても、新しいバージョンがインストールされるわけではありません。New versions aren't installed when you update the CLI. az extension update を使用して拡張機能の更新プログラムをインストールします。Install the updates for the extension with az extension update.

az extension update --name alias

Azure CLI のエイリアスを管理するManage aliases for the Azure CLI

エイリアス拡張機能を使用すると、他の CLI コマンドのエイリアスを作成して管理できます。The alias extension lets you create and manage aliases for other CLI commands. 使用可能なすべてのコマンドおよびパラメーターの詳細を表示するには、--help でエイリアス コマンドを実行します。To view all the available commands and parameter details, run the alias command with --help.

az alias --help

単純なエイリアス コマンドを作成するCreate simple alias commands

エイリアスの用途の 1 つは、既存のコマンド グループやコマンド名の短縮です。One use of aliases is for shortening existing command groups or command names. たとえば、group コマンド グループを rg に、list コマンドを ls に短縮できます。For example, you can shorten the group command group to rg and the list command to ls.

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

新しく定義したこれらのエイリアスは、定義が存在する任意の場所で使用できるようになります。These newly defined aliases can now be used anywhere that their definition would be.

az rg list
az rg ls
az vm ls

コマンドの一部として az を含めないでください。Do not include az as part of the command.

エイリアスは、完全なコマンドのショートカットにすることもできます。Aliases can also be shortcuts for complete commands. 次の例では、使用可能なリソース グループとその位置がテーブル出力で表示されています。The next example lists available resource groups and their locations in table output:

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

これで ls-groups を他の CLI コマンドのように実行できます。Now ls-groups can be run like any other CLI command.

az ls-groups

引数付きのエイリアス コマンドを作成するCreate an alias command with arguments

エイリアス名に {{ arg_name }} として含めることで、位置引数をエイリアス コマンドに追加することもできます。You can also add positional arguments to an alias command by including them as {{ arg_name }} in the alias name. 中かっこ内には空白が必要です。The whitespace inside the braces is required.

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

次の例のエイリアスは、位置引数を使用して VM のパブリック IP アドレスを取得する方法を示しています。The next example alias shows how to use positional arguments to get the public IP address for a VM.

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"

このコマンドを実行するときに、位置引数に値を指定します。When running this command, you give values to the positional arguments.

az get-vm-ip MyResourceGroup MyVM

エイリアス化されたコマンドで環境変数を使用することもできます。この環境変数は実行時に評価されます。You can also use environment variables in aliased commands, which are evaluated at runtime. 次の例では、create-rg エイリアスを追加します。これにより、eastus 内にリソース グループが作成され、owner タグが追加されます。The next example adds the create-rg alias, which creates a resource group in eastus and adds an owner tag. このタグには、ローカル環境変数 USER の値が割り当てられます。This tag is assigned the value of the local environment variable USER.

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

エイリアスのコマンド内に環境変数を登録するには、ドル記号 $ をエスケープする必要があります。To register the environment variables inside the command of the alias, the dollar sign $ must be escaped.

Jinja2 テンプレートを使用した引数の処理Process arguments using Jinja2 templates

エイリアス拡張機能での引数の置換は、Jinja2 によって実行されます。Argument substitution in the alias extension is performed by Jinja2. Jinja2 テンプレートでは、引数を操作することができます。Jinja2 templates allow for manipulating the arguments.

Jinja2 テンプレートを使用すると、基になるコマンドとは異なる型の引数を受け入れるエイリアスを作成できます。With Jinja2 templates, you can write aliases that take different types of arguments than the underlying command. たとえば、ストレージ URL を受け入れるエイリアスを作成できます。For example, you can make an alias that takes a storage URL. この URL が解析され、アカウント名とコンテナー名がストレージ コマンドに渡されます。Then this URL is parsed to pass the account and container names to the storage command.

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 テンプレート エンジンについては、Jinja2 のドキュメントを参照してください。To learn about the Jinja2 template engine, see the Jinja2 documentation.

エイリアス構成ファイルAlias configuration file

エイリアス構成ファイルを変更することで、エイリアスを作成および変更することもできます。Another way to create and modify aliases is to alter the alias configuration file. エイリアス コマンド定義は、$AZURE_USER_CONFIG/alias にある構成ファイルに書き込まれます。Alias command definitions are written into a configuration file, located at $AZURE_USER_CONFIG/alias. AZURE_USER_CONFIG の既定値は、macOS と Linux の場合は $HOME/.azure、Windows の場合は %USERPROFILE%\.azure です。The default value of AZURE_USER_CONFIG is $HOME/.azure on macOS and Linux, and %USERPROFILE%\.azure on Windows. エイリアス構成ファイルは、INI 構成ファイル形式で記述されます。The alias configuration file is written in the INI configuration file format. エイリアス コマンドの形式は次のとおりです。The format for alias commands is:

[alias_name]
command = invoked_commands

位置引数を含むエイリアスの場合、エイリアス コマンドの形式は次のとおりです。For aliases that have positional arguments, the format for alias commands is:

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

エイリアス構成ファイルで引数付きのエイリアス コマンドを作成するCreate an alias command with arguments via the alias configuration file

次の例では、引数が指定されたコマンドのエイリアスを示します。The next example shows an alias for a command with arguments. このコマンドにより、VM のパブリック IP アドレスが取得されます。This command gets the public IP address for a VM. エイリアス化されたコマンドは、1 行で全体を指定する必要があります。また、エイリアス名にはすべての引数を含める必要があります。Aliased commands must all be on a single line, and use all of the arguments in the alias name.

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

エイリアス拡張機能のアンインストールUninstall the alias extension

拡張機能をアンインストールするには、az extension remove コマンドを使用します。To uninstall the extension, use the az extension remove command.

az extension remove --name alias

拡張機能に関するバグなどの問題が原因でアンインストールした場合は、Microsoft が修正プログラムを提供できるように、GitHub に問題を提出してください。If you uninstalled because a bug or other problem with the extension, file a GitHub issue so that we can provide a fix.