首页 > 解决方案 > azcopy 在上传文件时始终创建文件夹结构

问题描述

我有一个本地目录,需要将其同步到我的 Azure Blob 存储的特定文件夹。不幸的是 azcopy 总是在目标目录中创建一个子文件夹。

本地文件夹:C:/local/vacation

上传文件夹:xxx.blob.core.windows.net/files/images/jpg

我希望将本地文件夹中的所有 JPG 放入上传文件夹。但是 azcopy 总是在我的上传文件夹中创建文件夹“假期”:(

这是代码:

$localFolder = "C:/local/vacation"
$targetFolder= "xxx.blob.core.windows.net/files/images/jpg"  (# here is the actual SAS URI)
azcopy copy $localfolder $targetfolder --include-pattern "*.jpg" --recursive=true 

标签: azureazure-blob-storageazcopy

解决方案


您可以使用同步操作来执行复制,而无需创建目录。

azcopy sync "C:\local\vacation" "https://*****.blob.core.windows.net/files/images/jpg/?SAStoken" --include-pattern "*.jpg" --recursive=true

例子:

对于您在下面看到的第一个命令,我第一次运行将 jpg 文件同步到目标,然后我在本地计算机文件夹中添加了另一个 jpg 文件并第二次运行该命令,它将 1 个新文件同步到目的地。

在此处输入图像描述

在此处输入图像描述

上面突出显示的文件存在于我的本地计算机目录中,当我执行同步时,它们仅从本地计算机复制到 azure,并且该目录未创建为子文件夹。

参考:

使用 AzCopy v10 与 Azure Blob 存储同步


推荐阅读