2

使用 AzCopy.exe,我能够成功复制整个容器。但是,我无法弄清楚如何复制名称包含文件夹结构的 blob。我尝试了以下方法:

.\AzCopy.exe /Source:https://sourceaccount.blob.core.windows.net/container /Dest:https://destaccount.blob.core.windows.net/container /SourceKey:sourceKey== /DestKey:destKey== /S /Pattern:CorruptZips/2013/6

同时还将 /Pattern: 更改为:

  • /模式:CorruptZips/2013/6/*
  • /模式:CorruptZips/2013/6/。
  • /模式:CorruptZips/2013/6/

一切都只是说复制的记录为零。可以这样做还是仅用于容器/文件复制?谢谢你。

4

3 回答 3

3

@naspinski,还有另一个名为的工具Azure Data Factory可以帮助将文件夹从 blob 存储帐户复制到另一个。请参阅使用 Azure 数据工厂将数据移入和移出 Azure Blob一文了解它并按照以下步骤操作。

  1. 在 Azure门户上创建数据工厂。
  2. 点击下Copy Data图按钮进入powercopytool界面,按照提示一步步复制文件夹。

在此处输入图像描述

在此处输入图像描述

于 2016-07-25T05:42:45.760 回答
0

我试了几次才得到这个。这是关键:

如果指定的源是 Blob 容器或虚拟目录,则不应用通配符。

换句话说,您不能通配符复制嵌套在容器中的文件夹结构中的文件。你有两个选择:

  • 使用不带模式的 /S 递归复制所有内容
  • 使用 /S 并在不使用通配符的情况下指定模式中的完整文件路径

例子:

C:\Users\myuser>azcopy /Source:https://source.blob.core.windows.net/system /Dest:https://dest.blob.core.windows.net/system /SourceKey:abc /DestKey:xyz /S /V /Pattern:"Microsoft.Compute/Images/vmimage/myimage.vhd"

编辑:糟糕,我的回答措辞不正确!

于 2016-10-27T20:07:04.460 回答
-1

请指定不带 /S 的命令:

AzCopy /来源:https ://myaccount.blob.core.windows.net/mycontainer1 /目标:https ://myaccount.blob.core.windows.net/mycontainer2 /SourceKey:key /DestKey:key /Pattern:abc。文本

您可以从http://aka.ms/azcopy中的“在存储帐户中复制单个 blob”中找到信息。

于 2016-07-22T00:32:49.383 回答