Sdílet prostřednictvím


Odstranění prostředků ve velkém měřítku pomocí Azure CLI

Jako správce cloudových prostředků Azure často při odebírání starého prostředí musíte odstranit několik prostředků Azure. Některá prostředí Azure CLI devTest také vyžadují pravidelné vyčištění, aby se zabránilo poplatkům za dočasné prostředky Azure, které můžou trvat déle, než je nutné.

V této ukázce Azure CLI se dozvíte následující položky:

  • Odstranění několika prostředků Azure ze skriptu
  • Zaznamenat průběh skriptu do místního souboru TXT

Tento ukázkový skript byl testován v Azure Cloud Shellu pomocí prostředí Bash. Tento skript byl také úspěšně testován v Ubuntu 22.04.3 LTS pomocí terminálu Windows.

Odstranit prostředky Azure a filtrovat 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

Smazat prostředky Azure pomocí 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

Odstraňte všechny prostředky Azure určitého typu

Odstraňte všechny virtuální počítače ve skupině prostředků

# Set your resource group variable
rgName=<msdocs-rg-0000000>

az group delete -n $rgName --force-deletion-types Microsoft.Compute/virtualMachines

Viz také