AzureCLIの便利機能(interactiveモード)
はじめに
AzureCLIを使ったことがある人にとって、コマンド入力時に「コマンドやリソースの補完」ができると便利だなぁと思うことはありませんか?
実は、まだプレビュー機能ですが、interactiveモードを利用すると、これを実現することができます。
今回は、このinteractiveモードが便利だと言うお話です。
interactiveモードの起動方法
interactiveモードの起動方法は、以下のコマンドを実行するだけです。
% az interactive
起動すると、下記のような画面になります。
また、az login後に起動する、もしくは起動後にaz loginすると、右下に現在のサブスクリプションが表示されます。
画面上では、「Visual Studio Enterprise サブスクリプション」となります。
![](https://assets.st-note.com/img/1646527647007-8nRncocg0H.png?width=1200)
interactiveモードでコマンドの補完
interactiveモードでは、コマンドを入力してくれると、自動で補完候補を表示してくれます。
この際、CLIのコマンドの補完も当然ありますが、選択中のサブスクリプション内やコマンドで指定しているリソースグループ内のリソース名に関しても補完してくれます。
CLIのコマンドの補完
まずは、CLIのコマンドの補完です。
例えば、リソースグループの作成をする際ですが、az groupと打つと、その後のコマンドで入力可能なサブコマンドを候補として出力してくれます。
また、ただ補完してくれるだけではなく、まずは候補の一覧を出してくれるので、コマンドを全て覚えていなくても、この一覧を見てやりたいことを選択できます。いちいちWebで調べて戻ってこなくていいので、非常に便利です。
![](https://assets.st-note.com/img/1646535124065-eMV65BJuBl.png?width=1200)
リソースの補完
次にリソースの補完です。
これは、CLIのコマンドの補完よりも非常に役立ちます。
具体的には、下図の事項例のようになります。
このコマンドは、VMを起動するコマンドになるのですが、起動するVMのリソース名を指定する箇所で、コマンド内で指定したリソースグループ内のVMを候補として出力してくれます。
![](https://assets.st-note.com/img/1646535390090-scbufVXtKH.png?width=1200)
このリソースの補完は、VMだけでなく、リソースグループなどAzureのリソース全てで利用可能なようです。
ただし、この機能は、インターネットのAPI経由で情報を取得しているようなので、インターネットに繋がらない環境では利用できません。試しに、ネットワーク接続を切って、同じコマンドを打ってみると、下図のように、補完されませんでした。
![](https://assets.st-note.com/img/1646535694114-7XppwPFsXy.png?width=1200)
PowerShellのコマンドレットとの比較
PowerShellを使う場合は、コマンドレットがある程度オプションについて補完してくれます。
そのため、上記の「CLIのコマンド補完」の機能の一部は実現できているかもしれません。(実際、私がPowerShellを使うときも非常にお世話になっています)
一方、リソース名は当然のこと、どのコマンドレットを使うかと言う点は、自分でドキュメントを見て調べる必要があります。
この点において、Azure CLIのinteractiveモードは非常に便利です。
終わりに
本日は、AzureCLIのinteractiveモードについて紹介いたしました。
個人的には結構便利な機能だと思います。Terafformなどを利用していると不要かと思いますが、AzureCLIでコマンドを実行する必要がある場合は、非常に便利なので、皆さんもさわってみてください。