我需要从 Azure 存储帐户复制所有容器和 blob。我已经想出了如何一次下载一个容器,但这很乏味。我想一次下载所有这些。
有人有这方面的信息吗?
谢谢,
詹姆士
我需要从 Azure 存储帐户复制所有容器和 blob。我已经想出了如何一次下载一个容器,但这很乏味。我想一次下载所有这些。
有人有这方面的信息吗?
谢谢,
詹姆士
据我所知,我们不能使用 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
}