Freigeben über


Schnellstart: Erstellen, Herunterladen und Auflisten von Blobs mit Azure CLI

Die Azure CLI ist die Befehlszeilenumgebung von Azure und dient zum Verwalten von Azure-Ressourcen. Sie können sie in Ihrem Browser mit Azure Cloud Shell verwenden. Außerdem können Sie sie unter macOS, Linux oder Windows installieren und über die Befehlszeile ausführen. In dieser Schnellstartanleitung lernen Sie, wie Sie die Azure CLI zum Hochladen und Herunterladen von Daten in und aus Azure Blob Storage verwenden.

Voraussetzungen

Sie benötigen ein Azure-Abonnement, um auf Azure Storage zuzugreifen. Wenn Sie noch kein Abonnement haben, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen.

Der gesamte Zugriff auf Azure Storage erfolgt über ein Speicherkonto. Für diesen Schnellstart erstellen Sie über das Azure-Portal mithilfe von Azure PowerShell oder über die Azure-Befehlszeilenschnittstelle ein Speicherkonto. Hilfe bei der Speicherkontoerstellung finden Sie unter Erstellen eines Speicherkontos.

Vorbereiten der Umgebung für die Azure CLI

  • Dieser Artikel erfordert Version 2.0.46 oder höher der Azure CLI. Wenn Sie Azure Cloud Shell verwenden, ist die neueste Version bereits installiert.

Autorisieren des Zugriffs auf BLOB-Speicher

Sie können den Zugriff auf Blob Storage über die Azure CLI entweder mit Microsoft Entra-Anmeldeinformationen oder mithilfe des Zugriffsschlüssels für das Speicherkonto autorisieren. Die Verwendung von Microsoft Entra-Anmeldeinformationen wird empfohlen. In diesem Artikel wird gezeigt, wie Sie Blob Storage-Vorgänge mithilfe der Microsoft Entra-ID autorisieren.

Azure CLI-Befehle für Datenvorgänge für Blob Storage unterstützen den --auth-mode Parameter, mit dem Sie angeben können, wie ein bestimmter Vorgang autorisiert werden soll. Legen Sie den --auth-mode-Parameter auf login fest, um ihn mit Microsoft Entra-Anmeldeinformationen zu autorisieren. Weitere Informationen finden Sie unter Autorisieren des Zugriffs auf Blob- oder Warteschlangendaten mit Azure CLI.

Nur BLOB-Speicherdatenvorgänge unterstützen den --auth-mode Parameter. Verwaltungsvorgänge, z. B. das Erstellen einer Ressourcengruppe oder eines Speicherkontos, verwenden automatisch Microsoft Entra-Anmeldeinformationen für die Autorisierung.

Melden Sie sich zunächst mit der az-Anmeldung bei Ihrem Azure-Konto an.

az login

Erstellen einer Ressourcengruppe

Erstellen Sie mit dem Befehl az group create eine Azure-Ressourcengruppe. Eine Ressourcengruppe ist ein logischer Container, in dem Azure-Ressourcen bereitgestellt und verwaltet werden.

Denken Sie daran, die Platzhalterwerte in eckigen Klammern durch Ihre eigenen Werte zu ersetzen:

az group create \
    --name <resource-group> \
    --location <location>

Speicherkonto erstellen

Erstellen Sie ein allgemeines Speicherkonto mit dem Befehl "az storage account create ". Das allgemeine Speicherkonto kann für alle vier Dienste verwendet werden: Blobs, Dateien, Tabellen und Warteschlangen.

Denken Sie daran, die Platzhalterwerte in eckigen Klammern durch Ihre eigenen Werte zu ersetzen:

az storage account create \
    --name <storage-account> \
    --resource-group <resource-group> \
    --location <location> \
    --sku Standard_ZRS \
    --encryption-services blob

Einen Container erstellen

Blobs werden immer in einen Container hochgeladen. Sie können Gruppen von Blobs in Containern organisieren, die der Art und Weise ähneln, wie Sie Ihre Dateien auf Ihrem Computer in Ordnern organisieren. Erstellen Sie einen Container zum Speichern von Blobs mit dem Befehl "az storage container create ".

Im folgenden Beispiel wird Ihr Microsoft Entra-Konto genutzt, um den Vorgang zur Erstellung des Containers zu autorisieren. Bevor Sie den Container erstellen, weisen Sie sich selbst die Rolle " Storage Blob Data Contributor " zu. Selbst wenn Sie der Kontobesitzer sind, benötigen Sie explizite Berechtigungen zum Ausführen von Datenvorgängen für das Speicherkonto. Weitere Informationen zum Zuweisen von Azure-Rollen finden Sie unter Zuweisen einer Azure-Rolle für den Zugriff auf BLOB-Daten.

Denken Sie daran, die Platzhalterwerte in eckigen Klammern durch Ihre eigenen Werte zu ersetzen:

az ad signed-in-user show --query id -o tsv | az role assignment create \
    --role "Storage Blob Data Contributor" \
    --assignee @- \
    --scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account>"

az storage container create \
    --account-name <storage-account> \
    --name <container> \
    --auth-mode login

Von Bedeutung

Azure-Rollenzuweisungen können einige Minuten dauern, bis sie verteilt werden.

Sie können auch den Speicherkontoschlüssel verwenden, um den Vorgang zum Erstellen des Containers zu autorisieren. Weitere Informationen zum Autorisieren von Datenvorgängen mit Azure CLI finden Sie unter Autorisieren des Zugriffs auf Blob- oder Warteschlangendaten mit Azure CLI.

Hochladen eines Blobs

Blob-Speicher unterstützt Blockblobs, Anfügungsblobs und Seitenblobs. Die Beispiele in dieser Schnellstartanleitung zeigen, wie Sie mit Block-Blobs arbeiten.

Erstellen Sie zunächst eine Datei, die in ein Block-BLOB hochgeladen werden soll. Wenn Sie Azure Cloud Shell verwenden, verwenden Sie den folgenden Befehl, um eine Datei zu erstellen:

vi helloworld

Wenn die Datei geöffnet wird, drücken Sie "Einfügen". Geben Sie "Hello world" ein, und drücken Sie dann ESC. Geben Sie als Nächstes :x ein, und drücken Sie dann die EINGABETASTE.

In diesem Beispiel laden Sie einen Blob in den Container hoch, den Sie im letzten Schritt mithilfe des Az Storage Blob Upload-Befehls erstellt haben. Es ist nicht erforderlich, einen Dateipfad anzugeben, da die Datei im Stammverzeichnis erstellt wurde. Denken Sie daran, die Platzhalterwerte in eckigen Klammern durch Ihre eigenen Werte zu ersetzen:

az storage blob upload \
    --account-name <storage-account> \
    --container-name <container> \
    --name myFile.txt \
    --file myFile.txt \
    --auth-mode login

Durch diesen Vorgang wird der Blob erstellt, wenn er noch nicht existiert, und überschrieben, falls er bereits existiert. Laden Sie beliebig viele Dateien hoch, bevor Sie fortfahren.

Wenn Sie ein Blob mithilfe der Azure CLI hochladen, gibt es entsprechende REST-API-Aufrufe über HTTP- und HTTPS-Protokolle aus.

Um mehrere Dateien gleichzeitig hochzuladen, können Sie den Befehl "az storage blob upload-batch " verwenden.

Auflisten der Blobs in einem Container

Der Befehl "az storage blob list" listet die Blobs im Container auf. Denken Sie daran, die Platzhalterwerte in eckigen Klammern durch Ihre eigenen Werte zu ersetzen:

az storage blob list \
    --account-name <storage-account> \
    --container-name <container> \
    --output table \
    --auth-mode login

Herunterladen eines Blobs

Verwenden Sie den Befehl "az storage blob download ", um das blob herunterzuladen, das Sie zuvor hochgeladen haben. Denken Sie daran, die Platzhalterwerte in eckigen Klammern durch Ihre eigenen Werte zu ersetzen:

az storage blob download \
    --account-name <storage-account> \
    --container-name <container> \
    --name myFile.txt \
    --file <~/destination/path/for/file> \
    --auth-mode login

Datenübertragung mit AzCopy

Das Befehlszeilenprogramm AzCopy bietet leistungsstarke, skriptfähige Datenübertragungen für Azure Storage. Sie können AzCopy verwenden, um Daten in und aus Blob Storage und Azure Files zu übertragen. Weitere Informationen zu AzCopy v10, der neuesten Version von AzCopy, finden Sie unter "Erste Schritte mit AzCopy". Informationen zur Verwendung von AzCopy v10 mit Blob Storage finden Sie unter Übertragen von Daten mit AzCopy und Blob Storage.

Im folgenden Beispiel wird AzCopy verwendet, um eine lokale Datei in ein Blob hochzuladen. Denken Sie daran, die Beispielwerte durch Ihre eigenen Werte zu ersetzen:

azcopy login
azcopy copy 'C:\myDirectory\myFile.txt' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myFile.txt'

Bereinigen von Ressourcen

Wenn Sie die Ressourcen löschen möchten, die Sie als Teil dieser Schnellstartanleitung erstellt haben, einschließlich des Speicherkontos, löschen Sie die Ressourcengruppe mithilfe des Befehls " az group delete ". Denken Sie daran, die Platzhalterwerte in eckigen Klammern durch Ihre eigenen Werte zu ersetzen:

az group delete \
    --name <resource-group> \
    --no-wait

Nächste Schritte

In dieser Schnellstartanleitung haben Sie erfahren, wie Sie Dateien zwischen einem lokalen Dateisystem und einem Container in Azure Blob Storage übertragen. Wenn Sie mehr über das Arbeiten mit Blob Storage mithilfe von Azure CLI erfahren möchten, wählen Sie unten eine Option aus.