はじめに
自分用のAzure CLIチートシートです。随時更新します。
Git Bashで動作確認をしています。
Azure CLIのバージョンは下記の通りです。
az --version
azure-cli 2.7.0
command-modules-nspkg 2.0.3
core 2.7.0
nspkg 3.0.4
telemetry 1.0.4
Azureへサインイン
az login
ブラウザが起動して認証画面に遷移する。
サブスクリプション切り替え
切り替え可能なサブスクリプションを表示する。
az account list \
--query "[?state=='Enabled'].{Name:name, User:user.name, Default:isDefault}" \
--output table
切り替えたいサブスクリプションを変数セットする。
subscriptionName=<Name>
既定サブスクリプションを切り替える。
az account set --subscription $subscriptionName --output table
既定サブスクリプションを表示する。
az account show --output table --query "{Name:name, User:user.name}"
既定リージョン設定
利用可能リージョンを表示する。
az account list-locations \
--query "[].{Name: name, DisplayName: displayName}" \
--output table
切り替えたいリージョンを変数セットする。
locationName=<Name>
既定のリージョンを設定する。
az configure --defaults location=$locationName
既定のリージョンを表示する。
az configure --list-default \
--query "[?name=='location'].{DefaultLocation:value}" \
--output table
リソースグループ作成
リソースグループ名を変数セットする。
resourceGroupName=<Name>
リソースグループを作成する
az group create --name $resourceGroupName \
--query "{Name:name, Location:location, State:properties.provisioningState}" \
--output table
リソースグループ削除
既定サブスクリプション内のリソースグループを表示する。
az group list \
--subscription `az account list --query "[?isDefault].name" --output tsv` \
--query "[].{Name:name, Location:location}" \
--output table
削除したいリソースグループ名を配列変数にセットする。
arrayResourceGroupName=("Name1" "Name2" "Name3" ..)
リソースグループを削除する。
for i in "${arrayResourceGroupName[@]}"
do
az group delete --name $i --no-wait --yes
done
Tips
--outputの引数
--output | 説明 |
---|---|
json |
JSON 文字列。 既定値 |
jsonc |
色付けされた JSON |
yaml |
YAML |
table |
列見出しとしてキーが使用されている ASCII テーブル |
tsv |
タブ区切りの値 (キーなし) |
none |
エラーと警告以外は出力されない |
--queryの使い方
- 最上位キーからプロパティにアクセスする。
- 子キーは**.(ドット)**の後に指定する。
- 複数のプロパティの配列形式の取得は**[key1, key2, key3]**の様に指定する。
- 複数のプロパティの辞書形式の取得は**{Name1:key1, Name2:key2.key21, Name3:key3[0].key31}**の様に指定する。