Odstranění prostředků ve velkém měřítku pomocí Azure CLI
Jako Správce prostředků Azure často musíte při odstraňování starého prostředí odstranit více prostředků Azure. Některá prostředí cli devTest také potřebují pravidelné vyčištění, takže se neúčtují poplatky za dočasné prostředky Azure, které zůstaly delší.
V této ukázce Azure CLI se naučíte následující:
- Odstranění několika prostředků Azure ze skriptu
- Průběh skriptu protokolu do místního souboru TXT
Tento ukázkový skript byl testován v Azure Cloud Shellu v prostředí Bash. Tento skript byl také úspěšně testován v Ubuntu 22.04.3 LTS pomocí Terminál Windows.
Odstranění prostředků Azure filtrování podle názvu
Pomocí tohoto skriptu můžete vypsat a odstranit skupiny prostředků, které začínají daným slovem.
# Set your subscription
subscriptionID=00000000-0000-0000-0000-00000000
az account set --subscription $subscriptionID
# Set your log file location
logFileLocation="myLogName.txt"
# Get the name of all resource groups that start with 'msdocs'
az group list --query "[?starts_with(name, 'msdocs') == \`true\`].name" -o table
# Delete resource groups without a confirmation prompt (--yes)
# Do not wait for the operation to finish (--no-wait)
echo "Deleting resource groups">$logFileLocation
for rgList in $(az group list --query "[?starts_with(name, 'msdocs') == \`true\`].name" -o tsv);
do
echo "deleting resource group $rgList">>$logFileLocation
az group delete --name $rgList --yes --no-wait
done
# read your log file with Linux "cat" command
clear
cat $logFileLocation
Odstranění prostředků Azure filtrování podle data vytvoření
Pomocí tohoto skriptu můžete vypsat a odstranit účty úložiště, které byly vytvořeny v rozsahu kalendářních dat.
# Set your log file location
logFileLocation="myLogName.txt"
# Set your resource group variable
rgName=<msdocs-rg-0000000>
# Get a list of Azure storage accounts that were created in the last 30 days. Return the results as a table.
saDate=$(date +%F -d "-30days")
az storage account list --resource-group $rgName \
--query "[?creationTime >='$saDate'].{saName:name, createdTimeStamp:creationTime}" \
--output table
# Delete storage accounts without a confirmation prompt (--yes).
# Do not wait for the operation to finish (--no-wait)
echo "Deleting storage accounts">$logFileLocation
for saList in $(az storage account list --resource-group $rgName \
--query "[?creationTime >='$saDate'].{saName:name, createdTimeStamp:creationTime}" \
--output tsv);
do
echo "deleting storage account $saList">>$logFileLocation
az storage account delete --ids $saList --yes --no-wait
done
# read your log file with Linux "cat" command
clear
cat $logFileLocation
Odstranění všech prostředků Azure typu
Odstranění všech virtuálních počítačů ve skupině prostředků
# Set your resource group variable
rgName=<msdocs-rg-0000000>
az group delete -n $rgName --force-deletion-types Microsoft.Compute/virtualMachines