linux - 如何使用 blobxfer 从 azure blob 存储下载子目录

标签 linux azure azure-blob-storage

我使用的是 ubuntu 64位 14.04。我该如何使用blobxfer将子目录从 Azure blob 存储下载到我的本地计算机。假设我有一个名为 MY_STORAGE_ACCOUNT 的存储帐户,一个名为 MY_CONTAINER 的容器,以及容器内的以下内容。

directory1/directory2/directory3/file1 
directory1/directory2/directory3/file2
directory1/directory2/directory3/file3
..
..
directory1/directory2/directory3/fileN

我只想下载子目录directory3

我有一个 SAS key ,可以访问并下载单个文件,但通配符在该 key 中不起作用。我的命令如下所示

blobxfer --saskey "$MYSASKEY" MY_STORAGE_ACCOUNT MY_CONTAINER "$LOCAL_DIR"  --download --remoteresource "directory1/directory2/directory3/*

并且我收到以下错误,这可能表明它无法理解命令中的通配符。

requests.exceptions.HTTPError: 404 Client Error: The specified blob does not exist.

最佳答案

请尝试这个:

blobxfer --saskey "$MYSASKEY" MY_STORAGE_ACCOUNT MY_CONTAINER "$LOCAL_DIR"  --download --remoteresource . --include "directory1/directory2/directory3/*"

此外,当您使用 SAS key 时,请确保 SAS 中包含 List 权限。

关于linux - 如何使用 blobxfer 从 azure blob 存储下载子目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42502438/

相关文章:

java - 在 Java 中执行 Linux 命令

linux - 如何检查 RPM .spec 文件中是否存在文件?

linux - 在变得不可行之前,父进程可以生成多少个子进程?

reactjs - 使用 Azure 应用服务扩展部署 React App 时的 "Error: write ECONNABORTED"

azure-data-factory - Azure 数据工厂 - 基于事件的多个文件/blob 的触发器

azure - 如何将 Blob 图像从 REST 控制台(例如 Google chrome 的 POSTMAN)上传到 Azure Blob 存储?

linux - Linux 上的 Apache2 权限

Azure 网站作为其他 Azure 网站的虚拟应用程序/目录

php - 如何在 Azure 上启用 Zend Guard Loader 扩展 (ZendLoader.dll)?

c# - 如何从 Azure BLOB 中的目录获取所有文件