快速入門:使用 Azure CLI 建立、下載及列出 Blob

Azure CLI 是 Azure 管理 Azure 資源的命令行體驗。 您可以在瀏覽器中搭配 Azure Cloud Shell 使用它。 您也可以在macOS、Linux或 Windows 上安裝它,並從命令行執行它。 在本快速入門中,您將瞭解如何使用 Azure CLI 來上傳和下載 Azure Blob 記憶體的數據。

必要條件

若要存取 Azure 儲存體,您需要 Azure 訂用帳戶。 如果您還沒有訂用帳戶,請在開始之前建立 免費帳戶

所有 Azure 儲存體 存取都會透過記憶體帳戶進行。 在本快速入門中,請使用 Azure 入口網站、Azure PowerShell 或 Azure CLI 建立記憶體帳戶。 如需建立記憶體帳戶的說明,請參閱 建立記憶體帳戶

備妥環境以使用 Azure CLI

  • 本文需要 Azure CLI 2.0.46 版或更新版本。 如果您是使用 Azure Cloud Shell,就已安裝最新版本。

授權存取 Blob 記憶體

您可以使用 Microsoft Entra 認證或使用儲存體帳戶存取金鑰,授權從 Azure CLI 存取 Blob 儲存體。 建議使用 Microsoft Entra 認證。 本文說明如何使用 Microsoft Entra ID 授權 Blob 記憶體作業。

針對 Blob 記憶體進行資料作業的 --auth-mode Azure CLI 命令支援 參數,可讓您指定如何授權指定的作業。 將 --auth-mode 參數設定為 login ,以使用 Microsoft Entra 認證進行授權。 如需詳細資訊,請參閱 使用 Azure CLI 授權 Blob 或佇列數據的存取權。

只有 Blob 記憶體資料作業支援 --auth-mode 參數。 管理作業,例如建立資源群組或記憶體帳戶,會自動使用 Microsoft Entra 認證進行授權。

若要開始,請使用 az login 登入您的 Azure 帳戶

az login

建立資源群組

使用 az group create 命令建立 Azure 資源群組。 資源群組是在其中部署與管理 Azure 資源的邏輯容器。

請記得以您自己的值取代角括弧中的佔位元值:

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

建立儲存體帳戶

使用 az storage account create 命令建立一般用途的記憶體帳戶。 一般用途的記憶體帳戶可用於所有四個服務:Blob、檔案、數據表和佇列。

請記得以您自己的值取代角括弧中的佔位元值:

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

建立容器

Blob 一律會上傳至容器中。 您可以在容器中組織 Blob 群組,類似於在資料夾中組織電腦上檔案的方式。 使用 az storage container create 命令建立用來儲存 Blob 的容器。

下列範例會使用您的 Microsoft Entra 帳戶來授權作業來建立容器。 建立容器之前,請先將 儲存體 Blob 數據參與者角色指派給自己。 即使您是帳戶擁有者,也需要明確許可權,才能對記憶體帳戶執行數據作業。 如需指派 Azure 角色的詳細資訊,請參閱 指派 Azure 角色以存取 Blob 數據

請記得以您自己的值取代角括弧中的佔位元值:

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

重要

Azure 角色指派可能需要幾分鐘的時間才能傳播。

您也可以使用記憶體帳戶金鑰來授權作業來建立容器。 如需使用 Azure CLI 授權資料作業的詳細資訊,請參閱 使用 Azure CLI 授權 Blob 或佇列數據的存取權。

上傳 Blob

Blob 記憶體支援區塊 Blob、附加 Blob 和分頁 Blob。 本快速入門中的範例示範如何使用區塊 Blob。

首先,建立檔案以上傳至區塊 Blob。 如果您使用 Azure Cloud Shell,請使用下列命令來建立檔案:

vi helloworld

當檔案開啟時,請按 insert。 輸入 Hello world,然後按 Esc 鍵。接下來,輸入 :x,然後按 Enter

在此範例中,您會使用 az storage blob upload 命令,將 Blob 上傳至您在最後一個步驟中建立的容器。 因為檔案是在根目錄建立,所以不需要指定檔案路徑。 請記得以您自己的值取代角括弧中的佔位元值:

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

如果 Blob 不存在,則此作業會建立 Blob,並在該 Blob 不存在時加以覆寫。 繼續之前,上傳您喜歡的檔案數量。

當您使用 Azure CLI 上傳 Blob 時,它會透過 HTTP 和 https 通訊協定發出個別 的 REST API 呼叫

若要同時上傳多個檔案,您可以使用 az storage blob upload-batch 命令。

列出容器中的 Blob

使用 az storage blob list 命令列出容器中的 Blob。 請記得以您自己的值取代角括弧中的佔位元值:

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

下載 Blob

使用 az storage blob download 命令來下載您稍早上傳的 Blob。 請記得以您自己的值取代角括弧中的佔位元值:

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

使用 AzCopy 進行數據傳輸

AzCopy 命令行公用程式為 Azure 儲存體 提供高效能、可編寫腳本的數據傳輸。 您可以使用 AzCopy 在 Blob 記憶體和 Azure 檔案儲存體 之間傳輸資料。 如需 AzCopy v10 版本 AzCopy 的詳細資訊,請參閱 開始使用 AzCopy。 若要瞭解如何搭配 Blob 記憶體使用 AzCopy v10,請參閱 使用 AzCopy 和 Blob 記憶體傳輸數據。

下列範例使用 AzCopy 將本機檔案上傳至 Blob。 請記得將範例值取代為您自己的值:

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

清除資源

如果您想要刪除在本快速入門中建立的資源,包括記憶體帳戶,請使用 az group delete 命令刪除資源群組。 請記得以您自己的值取代角括弧中的佔位元值:

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

下一步

在本快速入門中,您已瞭解如何在本機文件系統與 Azure Blob 記憶體中的容器之間傳輸檔案。 若要深入瞭解如何使用 Azure CLI 使用 Blob 記憶體,請選取下方的選項。