如何将本地文件复制到 Azure 存储(V2)

How to copy local file to Azure storage (V2)

我想自动执行将大量文件从本地服务器复制到 Azure 资源管理器存储帐户的过程。我已经使用经典存储帐户完成了此操作,并且有许多文章可用于使用经典存储帐户执行此任务,但我能找到的关于 V2 存储帐户的所有内容都是处理从一个 Azure 存储帐户复制到另一个的 cmdlet 和示例.是否可以这样做,如果可以,我应该使用什么 cmdlet?

就管理存储帐户中的数据(如上传文件)而言,V1 和 V2 存储帐户的过程相同。不同之处在于这些存储帐户的管理方式(如获取密钥、重新生成密钥等)。

您希望用于上传文件的 Cmdlet 是 Set-AzureStorageBlobContent。您将首先使用存储帐户的名称和密钥创建 AzureStorageContext,然后使用此 Cmdlet 上传文件。

来自 Cmdlet 帮助:

Get-Help Set-AzureStorageBlobContent -Full

NAME
    Set-AzureStorageBlobContent

SYNOPSIS
    Upload local file to Azure Storage blob.

SYNTAX
    Set-AzureStorageBlobContent [-File] <String> [-Container] <String> [-Blob <String>] [-BlobType <String>]
    [-Properties <Hashtable>] [-Metadata <Hashtable>] [-Force [<SwitchParameter>]] [-Context <AzureStorageContext>]
    [-ServerTimeoutPerRequest <Nullable`1[Int32]>] [-ClientTimeoutPerRequest <Nullable`1[Int32]>]
    [-ConcurrentTaskCount <Nullable`1[Int32]>] [-InformationAction <ActionPreference>] [-InformationVariable <String>]
    [<CommonParameters>]

这是一个示例代码片段:

$ctx = New-AzureStorageContext -StorageAccountName "account-name" -StorageAccountKey "account-key"
Set-AzureStorageBlobContent -File "file-path" -Container "container-name" -Blob "blob-name" -Context $ctx