0

我想使用 powershell 将 Blob从“Azure 存储”复制到我的“本地存储”(模拟器)。

我正在使用“ Start-AzureStorageBlobCopy

它在“Azure”到“Azure”存储之间运行良好。但是对于“Azure”到“本地”(模拟器)存储,blob 被复制但具有 0 字节。创建 Blob 是因为我可以在存储资源管理器中看到它们。

在 Azure 存储资源管理器中,我具有以下属性:

  • 复制进度:0/34550784
  • 复制状态:失败

在复制过程中,我在 Powershell 中没有错误。但是传输了0 个字节

VERBOSE: Performing the operation "Copy" on target "https://xxxxx.blob.core.windows.net/aaaa.db".
VERBOSE: Copy request to blob 'aaaaaa.db' in container 'yyyyy' has been scheduled with copyId 865e4d31-6729-44d1-997d-fdb76409d6cb.
ICloudBlob        : Microsoft.WindowsAzure.Storage.Blob.CloudBlockBlob
BlobType          : BlockBlob
Length            : 0
ContentType       : 
LastModified      : 9/10/2017 2:10:45 PM +00:00
SnapshotTime      : 
ContinuationToken : 
Context           : Microsoft.WindowsAzure.Commands.Storage.AzureStorageContext
Name              : aaaaaa.db

VERBOSE: Transfer Summary
--------------------------------
Total:  1.
Successful: 1.
Failed: 0.
4

2 回答 2

0

我认为不可能使用Start-AzureStorageBlobCopyCmdlet 将 blob 从您的云存储帐户复制到本地模拟器帐户。

Azure 复制 blob 是由 Azure 存储服务执行的服务器端异步操作。要使复制 blob 正常工作,Azure 存储服务应该能够到达目的地。由于目标帐户是无法从计算机外部访问的本地存储帐户,因此 Azure 存储服务永远无法到达目标。

一种可能的解决方案是下载 blob,然后使用相应的 Cmdlet 将其上传到本地存储帐户。

另一种选择是使用 AzCopy 的同步复制 blob 功能。AzCopy 中的同步复制 Blob 实现实际上是从源下载 blob 内容,然后将其上传到目标中。

于 2017-09-10T16:33:33.860 回答
0

Get-AzureStorageBlobContent 可能适合您。我写了一篇关于 AzureStorageFileContent 下载的文章,并在此处发布: Azure 文件存储下载

于 2017-09-11T18:50:47.643 回答