【发布时间】:2016-09-01 23:22:38
【问题描述】:
我已经设法编写了一个 python 脚本来列出容器中的所有 blob。
import azure
from azure.storage.blob import BlobService
from azure.storage import *
blob_service = BlobService(account_name='<CONTAINER>', account_key='<ACCOUNT_KEY>')
blobs = []
marker = None
while True:
batch = blob_service.list_blobs('<CONAINER>', marker=marker)
blobs.extend(batch)
if not batch.next_marker:
break
marker = batch.next_marker
for blob in blobs:
print(blob.name)
就像我说的,这仅列出了我要下载的 blob。我已经转移到 Azure CLI,看看它是否有助于我想做的事情。我可以下载单个 blob
azure storage blob download [container]
然后它会提示我指定一个可以从 python 脚本中获取的 blob。我必须下载所有这些 blob 的方法是在上面使用的命令之后将它们复制并粘贴到提示符中。有没有办法:
一个。编写一个 bash 脚本,通过执行命令遍历 blob 列表,然后在提示符中粘贴下一个 blob 名称。
B。指定在 python 脚本或 Azure CLI 中下载容器。有没有我没有看到下载整个容器的东西?
【问题讨论】:
-
您是否尝试过使用
blob_service.download_blob_to_path下载 blob?请在此处查看示例:azure.microsoft.com/en-in/documentation/articles/….
标签: python bash azure containers