如何从az cli正确获取azure中带空格的blob名称

如何从az cli正确获取azure中带空格的blob名称,azure,azure-storage-blobs,Azure,Azure Storage Blobs,我有一个用户在他们的文件名中放了很多空格,这会导致下载脚本出错 要获取blob的名称,我使用以下方法: BLOBS=$(az storage blob list --container-name $c \ --account-name $AZURE_STORAGE_ACCOUNT --account-key $AZURE_STORAGE_KEY \ --query "[].{name:name}" --output tsv) 像blob with space.pdf这样的blob会发生什么

我有一个用户在他们的文件名中放了很多空格,这会导致下载脚本出错

要获取blob的名称,我使用以下方法:

BLOBS=$(az storage blob list --container-name $c \
--account-name $AZURE_STORAGE_ACCOUNT  --account-key $AZURE_STORAGE_KEY \
--query "[].{name:name}" --output tsv) 
blob with space.pdf
这样的blob会发生什么情况?它将存储为
[blob\twith\tspace.pdf]
,其中\t是选项卡。当我迭代下载时,显然我无法获取该文件

如何才能正确地执行此操作

您可以使用此命令

我在azure portal中测试了它,所有的blob(包括名称中包含空格的blob)都被下载

命令:

c=container_name
AZURE_STORAGE_ACCOUNT=xx
AZURE_STORAGE_KEY=xx

//download the blobs to clouddrive
cd clouddrive

az storage blob download-batch -d . -s $c --account-name $AZURE_STORAGE_ACCOUNT --account-key $AZURE_STORAGE_KEY
测试结果:


你想下载容器中包含空格的blob吗?@IvanYang没错。对不起,我忙了一两天没有编程的生活。