提问者:小点点

将多文件从linux文件夹上载到Azure Blob存储



现在在Linux虚拟机中,我使用以下命令上载一个文件:
azure storage blob upload-q/folder/file。txt—容器名称

是否可以同时上载更多文件?(使用单个命令)


共3个答案

匿名用户

您可以使用这样的循环

#!/bin/bash

export AZURE_STORAGE_ACCOUNT='your_account'
export AZURE_STORAGE_ACCESS_KEY='your_access_key'

export container_name='name_of_the_container_to_create'
export source_folder=~/path_to_local_file_to_upload/*


echo "Creating the container..."
azure storage container create $container_name

for f in $source_folder
do
  echo "Uploading $f file..."
  azure storage blob upload $f $container_name $(basename $f)
  cat $f
done

echo "Listing the blobs..."
azure storage blob list $container_name

echo "Done"

匿名用户

命令行没有在一次调用中批量上载多个文件的选项。但是,您可以使用查找或循环上载多个文件,或者如果可以从Windows执行此操作,则可以使用AzCopy工具(http://aka.ms/azcopy).

匿名用户

如果您可以访问Linux虚拟机上最近的Python解释器,并且您的所有文件都在一个目录中,那么Azure批处理和HPC团队已经发布了一个代码示例,其中包含Python上一些类似AzCopy的功能,名为blobxfer,这可能有助于解决您的问题。该脚本允许完全递归目录进入Azure存储,以及将完整容器复制回本地存储。[完全披露:我是该代码的贡献者]