【问题标题】:Powershell: Azcopy a folder structure from the local drive to the blob storagePowershell:将文件夹结构从本地驱动器复制到 blob 存储
【发布时间】:2021-07-04 14:01:49
【问题描述】:

您好,我是 azure 门户和 powershell 的新手。

我正在尝试将本地驱动器复制到 blob 存储,同时保持文件夹结构。此外,如果有一个清单文件,它还会为我提供一个文件夹列表和每个文件的列表。

非常感谢任何建议和帮助。

【问题讨论】:

  • az copy --help我们可以看到:azcopy cp "/path/to/dir" "https://[account].blob.core.windows.net/[container]/[path/to/directory]?[SAS]" --recursive=true。你试过了吗?
  • 我使用了 .\AzCopy /Source:$source /Dest:$blobURL /DestKey:$key /S 它似乎从文件路径中复制了所有内容

标签: powershell azure-blob-storage


【解决方案1】:

如果要使用 Azcopy 上传目录,我们可以使用以下脚本。更多详情请参考here

azcopy copy "E:\sampleData" "https://<accountName>.blob.core.windows.net/<path>?<sasToken>" --recursive

此外,您还可以使用以下 PowerShell 脚本来执行此操作

$StorageAccountKey=" "
$sourceFileRootDirectory=" "
$StorageAccountName=" "
$ContainerName=" "
$ctx = New-AzureStorageContext -StorageAccountName $StorageAccountName -StorageAccountKey $StorageAccountKey
$container = Get-AzureStorageContainer -Name $ContainerName -Context $ctx

 if ($container) {
        $filesToUpload = Get-ChildItem $sourceFileRootDirectory -Recurse -File

        foreach ($x in $filesToUpload) {
            $blobName = ($x.fullname.Substring($x.PSDrive.Root.Length)).Replace("\", "/")

            Set-AzureStorageBlobContent -File $x.fullname -Container $container.Name -Blob $blobName -Context $ctx -Force:$Force 
        }
}

【讨论】:

  • 如何输出和保存详细或清单,它为我提供了文件夹列表和每个文件列表。从 azcopy 教程中我看到他使用了 .\Azcopy /source:C:files /Dest:blobURL /DestKey:$Key /S /V:\logs\AZCopyLogs.log 在 azcopy 或从 powershell 脚本中是否有另一种方法清单或详细
猜你喜欢
  • 2023-01-24
  • 2022-01-19
  • 2023-01-20
  • 2022-09-28
  • 1970-01-01
  • 1970-01-01
  • 2021-02-22
  • 2019-11-15
  • 1970-01-01
相关资源
最近更新 更多