Azure 使用AZCopy一次从所有容器下载blob

Azure 使用AZCopy一次从所有容器下载blob,azure,azure-storage,azcopy,Azure,Azure Storage,Azcopy,我需要从Azure存储帐户复制所有容器和Blob。我已经知道了如何一次下载一个容器,但这相当乏味。我想一次下载所有的 有人知道这件事吗 谢谢 James据我所知,我们无法使用azcopy一次性将所有容器的文件复制到本地 正如您所说,我们可以一次将一个容器下载到本地 以下是一个解决方法: 我们可以首先使用命令行工具(例如powershell)(Get-AzureStorageContainer)列出所有容器,然后使用foreach将文件下载到本地 powershell脚本如下所示: $Source

我需要从Azure存储帐户复制所有容器和Blob。我已经知道了如何一次下载一个容器,但这相当乏味。我想一次下载所有的

有人知道这件事吗

谢谢


James

据我所知,我们无法使用azcopy一次性将所有容器的文件复制到本地

正如您所说,我们可以一次将一个容器下载到本地

以下是一个解决方法:

我们可以首先使用命令行工具(例如powershell)(Get-AzureStorageContainer)列出所有容器,然后使用foreach将文件下载到本地

powershell脚本如下所示:

$SourceStorageAccountName = "<SourceStorageAccountName>"
$SourceStorageKey = Get-AzureStorageKey -StorageAccountName $SourceStorageAccountName
$StorageContext = New-AzureStorageContext -StorageAccountName $SourceStorageKey.StorageAccountName -StorageAccountKey $SourceStorageKey.Primary
$containers = Get-AzureStorageContainer -Context $StorageContext

foreach ($c in $containers) {
    "Transfer container " + $c.Name
    $cmd = "C:\'Program Files (x86)'\'Microsoft SDKs'\Azure\AzCopy\AzCopy.exe /Source:" + $c.CloudBlobContainer.Uri.AbsoluteUri + " /Dest: +"youfile path"

    Invoke-Expression $cmd
}
$SourceStorageAccountName=“”
$SourceStorageKey=Get-AzureStorageKey-StorageAccountName$SourceStorageAccountName
$StorageContext=New AzureStorageContext-StorageAccountName$SourceStorageKey.StorageAccountName-StorageAccountKey$SourceStorageKey.Primary
$containers=Get AzureStorageContainer-Context$StorageContext
foreach($集装箱中的c){
“转移容器”+$c.Name
$cmd=“C:\'ProgramFiles(x86)\'Microsoft SDK'\Azure\AzCopy\AzCopy.exe/来源:“+$C.CloudBlobContainer.Uri.AbsoluteUri+”/Dest:+“youfile path”
调用表达式$cmd
}