从Linux上的Azure Blob存储中上载多个文件

时间:2015-03-16 23:07:03

标签: linux azure-storage azure-storage-blobs

有没有办法从Linux机器上将多个文件上传到Azure Blob存储,使用终端或应用程序(基于Web还是不基于Web)?

3 个答案:

答案 0 :(得分:2)

感谢您的关注 - 在Linux中从Azure Blob上传文件有两种选择:

  1. 按照以下步骤设置和使用XPlatCLI:

    • http://azure.microsoft.com/en-us/documentation/articles/xplat-cli/
    • 安装OS X安装程序
    • 打开终端窗口并通过下载和使用发布设置文件或使用组织帐户登录Azure来连接到Azure订阅(在此处查找说明)
    • 创建一个环境变量AZURE_STORAGE_CONNECTION_STRING并设置其值(您需要您的帐户名和帐户密钥):“DefaultEndpointsProtocol = https; AccountName = enter_your_account; AccountKey = enter_your_key”
    • 使用以下命令将文件上传到Azure blob存储:azure storage blob upload [file] [container] [blob]
  2. 使用CloudPortam之类的第三方网络存储资源管理器之一:http://www.cloudportam.com/。 您可以在此处找到完整的azure存储资源管理器列表:http://blogs.msdn.com/b/windowsazurestorage/archive/2014/03/11/windows-azure-storage-explorers-2014.aspx

答案 1 :(得分:0)

如果您更喜欢命令行并拥有最近的Python解释器,Azure Batch和HPC团队已发布了一些代码示例,其中包含一些AzCopy-like functionality on Python called blobxfer。这允许完全递归目录进入Azure存储以及完整容器复制回本地存储。 [完全披露:我是此代码的撰稿人]

答案 2 :(得分:0)

您可以使用find命令和exec选项执行上传每个文件的命令,如as described here所述:

find *.csv -exec az storage blob upload --file {} --container-name \
CONTAINER_NAME --name {} --connection-string=‘CONNECTION_STRING’ \;

其中CONNECTION_STRING是Azure Blob商店容器的连接字符串,可从portal.azure.com获得。这会将目录中的所有CSV文件上载到与连接字符串关联的Azure Blob存储。