Azure CLI のコマンド実行を実行した際の出力結果は、既定では Json 形式となります。
Json 形式だと、Azure ポータルからでは確認することができなかったパラメーターや値などを確認することができて便利だったりしますが、グループ ポリシー一覧を表示させる場合などは、作成しているグループ ポリシー数によってはこんな感じで出力結果が長くなり、見づらくなってしまうことがよくあります。
Azure CLI には PowerShell とは異なり、実行結果の出力形式を変更する方法が備わっているので纏めてみました。
※PowerShell の場合、出力結果をパイプ等で引き渡して Format-Table や Format-List などで変換する必要がある。
Azure CLI のコマンド実行結果の出力形式を変更する方法について
Azure CLI コマンド実行結果で出力できる形式について
出力できる形式は以下となります。
出力形式 | 概要 |
---|---|
json | json 形式で出力 (既定) |
jsonc | 変数などを色付けした json 形式で出力 |
yaml | yaml 形式 |
table | ASCII テーブル (キーを列見出しとして使用) |
tsv | タブ区切り (キーなし) |
none | エラーと警告のみを出力する (正常終了の場合、なにも表示されない) |
Azure CLI のコマンド実行結果の出力形式を変更する方法
コマンドを実行する際に –output オプションを用いる方法
コマンドを実行する際、–output オプションを用いることで、出力結果として指定した形式が指定したものとなります。
–output オプションの指定は、以下のとおりとなります。
<Azure CLI コマンド> --output <出力形式>
例えば、”table” 形式でリソース グループ一覧を表示 (az group list) した場合には、以下のように出力されます。
出力形式を “none” にした場合には、以下のとおり何も出力されませんw
既定の出力形式を変更する方法
az config set コマンドを用いて、以下の既定の出力形式を変更することが可能です。
コマンド例としては、以下となります。
az config set core.output=<出力形式>
実際に既定の出力形式を table 形式に変更してみます。
その後、リソース グループ一覧を表示 (az group list) した場合には、以下のように table 形式で出力されることを確認できます。
既定の出力形式を変更した場合の注意点
出力形式によっては、コマンドを実行しても、形式に対応していないため結果が表示されないといった場合があります。
例として、CLI 構成ファイルの内容を出力するコマンド (az config get) は “table” 形式では内容が表示されません。
逆に “json” 形式では問題なく内容が表示されます。
まとめ
Azure CLI のコマンド実行結果の出力形式を変更する方法としては、以下の 2 つがあります。
- コマンドを実行する際に –output オプションを用いる方法
- 既定の出力形式を変更する方法
既定の出力形式を変更した場合には、出力する内容によっては表示されない出力形式があるので注意。
個人的には既定の出力形式は json のままにしておいて、–output オプションで出力形式を指定してコマンド実行するのがよいかなと思います。