Usare uno script dell'interfaccia della riga di comando di Azure per eliminare i contenitori in base al prefisso del nome

Per prima cosa, lo script crea alcuni contenitori di esempio nell'Archiviazione BLOB di Azure, quindi ne elimina alcuni in base a un prefisso nel nome dei contenitori stessi.

Se non si ha una sottoscrizione di Azure, creare un account Azure gratuito prima di iniziare.

Prerequisiti

Script di esempio

Avviare Azure Cloud Shell

Azure Cloud Shell è una shell interattiva gratuita che può essere usata per eseguire la procedura di questo articolo. Include strumenti comuni di Azure preinstallati e configurati per l'uso con l'account.

Per aprire Cloud Shell, basta selezionare Prova nell'angolo superiore destro di un blocco di codice. È anche possibile avviare Cloud Shell in una scheda separata del browser visitando https://shell.azure.com.

Quando si apre Cloud Shell, verificare che Bash sia selezionato per l'ambiente in uso. Le sessioni successive useranno l'interfaccia della riga di comando di Azure in un ambiente Bash, selezionare Copia per copiare i blocchi di codice, incollarli in Cloud Shell e premere INVIO per eseguirlo.

Accedere ad Azure

Cloud Shell viene autenticato automaticamente con l'account iniziale con cui è stato eseguito l'accesso. Usare lo script seguente per accedere usando una sottoscrizione diversa, sostituendo <Subscription ID> con l'ID sottoscrizione di Azure. Se non si ha una sottoscrizione di Azure, creare un account Azure gratuito prima di iniziare.

subscription="<subscriptionId>" # add subscription here

az account set -s $subscription # ...or use 'az login'

Per altre informazioni, vedere Impostare una sottoscrizione attiva o accedere in modo interattivo

Eseguire lo script

# Delete containers by prefix

# Variables for storage
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-azuresql-rg-$randomIdentifier"
tag="delete-containers-by-prefix"
storage="msdocsstorage$randomIdentifier"
container1="msdocs-test1-storage-container-$randomIdentifier"
container2="msdocs-test2-storage-container-test2-$randomIdentifier"
containerProd="msdocs-prod1-storage-$randomIdentifier"

# Create a resource group
echo "Creating $resourceGroup in $location..."
az group create --name $resourceGroup --location "$location" --tags $tag

# Create storage account
echo "Creating $storage..."
az storage account create --name $storage --resource-group $resourceGroup --location "$location" --sku Standard_LRS

# Create some test containers
echo "Creating $container1 $container2 and $containerProd on $storage..."
key=$(az storage account keys list --account-name $storage --resource-group $resourceGroup -o json --query [0].value | tr -d '"')

az storage container create --name $container1 --account-key $key --account-name $storage #--public-access container
az storage container create --name $container2 --account-key $key --account-name $storage #--public-access container
az storage container create --name $containerProd --account-key $key --account-name $storage #--public-access container

# List only the containers with a specific prefix
echo "List container with msdocs-test prefix"
az storage container list --account-key $key --account-name $storage --prefix "msdocs-test" --query "[*].[name]" --output tsv

# Delete 
echo "Deleting msdocs-test containers..."
for container in `az storage container list --account-key $key --account-name $storage --prefix "msdocs-test" --query "[*].[name]" --output tsv`; do
    az storage container delete --account-key $key --account-name $storage --name $container
done

echo "Remaining containers..."
az storage container list --account-key $key --account-name $storage --output table

Pulire le risorse

Usare il comando seguente per rimuovere il gruppo di risorse e tutte le risorse associate usando il comando az group delete , a meno che non si disponga di una necessità continua per queste risorse. La creazione di alcune di queste risorse può richiedere tempo, nonché l'eliminazione.

az group delete --name $resourceGroup

Informazioni di riferimento per l'esempio

Lo script usa i comandi seguenti per eliminare i contenitori in base al prefisso contenuto nel nome dei contenitori stessi. Ogni elemento della tabella include collegamenti alla documentazione specifica del comando.

Comando Note
az group create Consente di creare un gruppo di risorse in cui sono archiviate tutte le risorse.
az storage account create Crea un account di Archiviazione di Azure nel gruppo di risorse specificato.
az storage container create Crea un contenitore nell'Archiviazione BLOB di Azure.
az storage container list Elenca i contenitori nell'account di Archiviazione di Azure.
az storage container delete Elimina i contenitori nell'account di Archiviazione di Azure.

Passaggi successivi

Per altre informazioni sull'interfaccia della riga di comando di Azure, vedere la documentazione sull'interfaccia della riga di comando di Azure.

Altri esempi di script dell'interfaccia della riga di comando sono disponibili in Interfaccia della riga di comando di Azure.