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

how to download a sub directory from azure blob storage using blobxfer

我正在使用 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 密钥,它可以访问并可以下载单个文件,但是通配符在其中不起作用。我的命令如下所示

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 密钥时,请确保 List 权限包含在 SAS 中。