你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Start-AzStorageBlobCopy

开始复制 Blob。

语法

Start-AzStorageBlobCopy
     [-SrcBlob] <String>
     -SrcContainer <String>
     -DestContainer <String>
     [-DestBlob <String>]
     [-PremiumPageBlobTier <PremiumPageBlobTier>]
     [-StandardBlobTier <String>]
     [-RehydratePriority <RehydratePriority>]
     [-Tag <Hashtable>]
     [-Context <IStorageContext>]
     [-DestContext <IStorageContext>]
     [-DestTagCondition <String>]
     [-TagCondition <String>]
     [-Force]
     [-ServerTimeoutPerRequest <Int32>]
     [-ClientTimeoutPerRequest <Int32>]
     [-DefaultProfile <IAzureContextContainer>]
     [-ConcurrentTaskCount <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-AzStorageBlobCopy
     -CloudBlob <CloudBlob>
     [-BlobBaseClient <BlobBaseClient>]
     -DestContainer <String>
     [-DestBlob <String>]
     [-PremiumPageBlobTier <PremiumPageBlobTier>]
     [-StandardBlobTier <String>]
     [-RehydratePriority <RehydratePriority>]
     [-Tag <Hashtable>]
     [-Context <IStorageContext>]
     [-DestContext <IStorageContext>]
     [-DestTagCondition <String>]
     [-TagCondition <String>]
     [-Force]
     [-ServerTimeoutPerRequest <Int32>]
     [-ClientTimeoutPerRequest <Int32>]
     [-DefaultProfile <IAzureContextContainer>]
     [-ConcurrentTaskCount <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-AzStorageBlobCopy
     -CloudBlob <CloudBlob>
     [-BlobBaseClient <BlobBaseClient>]
     -DestCloudBlob <CloudBlob>
     [-PremiumPageBlobTier <PremiumPageBlobTier>]
     [-StandardBlobTier <String>]
     [-RehydratePriority <RehydratePriority>]
     [-Tag <Hashtable>]
     [-Context <IStorageContext>]
     [-DestContext <IStorageContext>]
     [-DestTagCondition <String>]
     [-TagCondition <String>]
     [-Force]
     [-ServerTimeoutPerRequest <Int32>]
     [-ClientTimeoutPerRequest <Int32>]
     [-DefaultProfile <IAzureContextContainer>]
     [-ConcurrentTaskCount <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-AzStorageBlobCopy
     -CloudBlobContainer <CloudBlobContainer>
     [-SrcBlob] <String>
     -DestContainer <String>
     [-DestBlob <String>]
     [-PremiumPageBlobTier <PremiumPageBlobTier>]
     [-StandardBlobTier <String>]
     [-RehydratePriority <RehydratePriority>]
     [-Tag <Hashtable>]
     [-Context <IStorageContext>]
     [-DestContext <IStorageContext>]
     [-DestTagCondition <String>]
     [-TagCondition <String>]
     [-Force]
     [-ServerTimeoutPerRequest <Int32>]
     [-ClientTimeoutPerRequest <Int32>]
     [-DefaultProfile <IAzureContextContainer>]
     [-ConcurrentTaskCount <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-AzStorageBlobCopy
     -SrcShareName <String>
     -SrcFilePath <String>
     -DestContainer <String>
     [-DestBlob <String>]
     [-StandardBlobTier <String>]
     [-RehydratePriority <RehydratePriority>]
     [-Tag <Hashtable>]
     [-Context <IStorageContext>]
     [-DestContext <IStorageContext>]
     [-DestTagCondition <String>]
     [-Force]
     [-ServerTimeoutPerRequest <Int32>]
     [-ClientTimeoutPerRequest <Int32>]
     [-DefaultProfile <IAzureContextContainer>]
     [-ConcurrentTaskCount <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-AzStorageBlobCopy
     -SrcShare <CloudFileShare>
     -SrcFilePath <String>
     -DestContainer <String>
     [-DestBlob <String>]
     [-StandardBlobTier <String>]
     [-RehydratePriority <RehydratePriority>]
     [-Tag <Hashtable>]
     [-Context <IStorageContext>]
     [-DestContext <IStorageContext>]
     [-DestTagCondition <String>]
     [-Force]
     [-ServerTimeoutPerRequest <Int32>]
     [-ClientTimeoutPerRequest <Int32>]
     [-DefaultProfile <IAzureContextContainer>]
     [-ConcurrentTaskCount <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-AzStorageBlobCopy
     -SrcDir <CloudFileDirectory>
     -SrcFilePath <String>
     -DestContainer <String>
     [-DestBlob <String>]
     [-StandardBlobTier <String>]
     [-RehydratePriority <RehydratePriority>]
     [-Tag <Hashtable>]
     [-Context <IStorageContext>]
     [-DestContext <IStorageContext>]
     [-DestTagCondition <String>]
     [-Force]
     [-ServerTimeoutPerRequest <Int32>]
     [-ClientTimeoutPerRequest <Int32>]
     [-DefaultProfile <IAzureContextContainer>]
     [-ConcurrentTaskCount <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-AzStorageBlobCopy
     -SrcFile <CloudFile>
     -DestContainer <String>
     [-DestBlob <String>]
     [-StandardBlobTier <String>]
     [-RehydratePriority <RehydratePriority>]
     [-Tag <Hashtable>]
     [-Context <IStorageContext>]
     [-DestContext <IStorageContext>]
     [-DestTagCondition <String>]
     [-Force]
     [-ServerTimeoutPerRequest <Int32>]
     [-ClientTimeoutPerRequest <Int32>]
     [-DefaultProfile <IAzureContextContainer>]
     [-ConcurrentTaskCount <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-AzStorageBlobCopy
     -SrcFile <CloudFile>
     -DestCloudBlob <CloudBlob>
     [-StandardBlobTier <String>]
     [-RehydratePriority <RehydratePriority>]
     [-Tag <Hashtable>]
     [-Context <IStorageContext>]
     [-DestContext <IStorageContext>]
     [-DestTagCondition <String>]
     [-Force]
     [-ServerTimeoutPerRequest <Int32>]
     [-ClientTimeoutPerRequest <Int32>]
     [-DefaultProfile <IAzureContextContainer>]
     [-ConcurrentTaskCount <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-AzStorageBlobCopy
     -AbsoluteUri <String>
     -DestContainer <String>
     -DestBlob <String>
     [-StandardBlobTier <String>]
     [-RehydratePriority <RehydratePriority>]
     [-Tag <Hashtable>]
     [-Context <IStorageContext>]
     [-DestContext <IStorageContext>]
     [-DestTagCondition <String>]
     [-TagCondition <String>]
     [-Force]
     [-ServerTimeoutPerRequest <Int32>]
     [-ClientTimeoutPerRequest <Int32>]
     [-DefaultProfile <IAzureContextContainer>]
     [-ConcurrentTaskCount <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]

说明

Start-AzStorageBlobCopy cmdlet 开始复制 blob。

示例

示例 1:复制命名 Blob

Start-AzStorageBlobCopy -SrcBlob "ContosoPlanning2015" -DestContainer "ContosoArchives" -SrcContainer "ContosoUploads"

此命令从名为 ContosoUploads 的容器启动名为 ContosoPlanning2015 的 blob 复制到名为 ContosoArchives 的容器。

示例 2:获取用于指定要复制的 Blob 的容器

Get-AzStorageContainer -Name "ContosoUploads" | Start-AzStorageBlobCopy -SrcBlob "ContosoPlanning2015" -DestContainer "ContosoArchives"

此命令使用 Get-AzStorageContainer cmdlet 获取名为 ContosoUploads 的容器,然后使用管道运算符将容器传递到当前 cmdlet。 该 cmdlet 启动名为 ContosoPlanning2015 的 Blob 的复制操作。 前面的 cmdlet 提供源容器。 DestContainer 参数将 ContosoArchives 指定为目标容器。

示例 3:获取容器中的所有 Blob 并复制它们

Get-AzStorageBlob -Container "ContosoUploads" | Start-AzStorageBlobCopy -DestContainer "ContosoArchives"

此命令使用 Get-AzStorageBlob cmdlet 获取名为 ContosoUploads 的容器中的 blob,然后使用管道运算符将结果传递给当前 cmdlet。 该 cmdlet 启动 blob 到名为 ContosoArchives 的容器的复制操作。

示例 4:复制指定为对象的 Blob

$SrcBlob = Get-AzStorageBlob -Container "ContosoUploads" -Blob "ContosoPlanning2015"
$DestBlob = Get-AzStorageBlob -Container "ContosoArchives" -Blob "ContosoPlanning2015Archived"
Start-AzStorageBlobCopy -ICloudBlob $SrcBlob.ICloudBlob -DestICloudBlob $DestBlob.ICloudBlob

第一个命令在名为 ContosoUploads 的容器中获取名为 ContosoPlanning2015 的 Blob。 该命令将该对象存储在$SrcBlob变量中。 第二个命令在名为 ContosoArchives 的容器中获取名为 ContosoPlanning2015Archived 的 Blob。 该命令将该对象存储在$DestBlob变量中。 最后一个命令启动从源容器到目标容器的复制操作。 该命令使用标准点表示法为$SrcBlob和$DestBlob blob 指定 ICloudBlob 对象。

示例 5:从 URI 复制 Blob

$Context = New-AzStorageContext -StorageAccountName "ContosoGeneral" -StorageAccountKey "< Storage Key for ContosoGeneral ends with == >"
Start-AzStorageBlobCopy -AbsoluteUri "http://www.contosointernal.com/planning" -DestContainer "ContosoArchive" -DestBlob "ContosoPlanning2015" -DestContext $Context

此命令为名为 ContosoGeneral 的帐户创建一个上下文,该帐户使用指定的密钥,然后将该密钥存储在$Context变量中。 第二个命令将文件从指定的 URI 复制到名为 ContosoArchive 的容器中名为 ContosoPlanning 的 Blob。 该命令启动复制到存储在$Context的目标上下文的复制操作。 没有源存储上下文,因此源 URI 必须有权访问源对象。 例如:如果源不是公共 Azure Blob,则 URI 应包含 SAS 令牌,该令牌具有对 Blob 的读取访问权限。

示例 6:将块 Blob 复制到具有新 Blob 名称的目标容器,并将目标 Blob StandardBlobTier 设置为 Hot、RehydratePriority 为 High

Start-AzStorageBlobCopy -SrcContainer "ContosoUploads" -SrcBlob "BlockBlobName" -DestContainer "ContosoArchives" -DestBlob "NewBlockBlobName" -StandardBlobTier Hot -RehydratePriority High

此命令使用新的 Blob 名称启动块 blob 到目标容器的复制操作,并将目标 Blob StandardBlobTier 设置为 Hot、RehydratePriority 为 High

参数

-AbsoluteUri

指定要复制到Azure 存储 blob 的文件的绝对 URI。

类型:String
别名:SrcUri, SourceUri
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-BlobBaseClient

BlobBaseClient 对象

类型:BlobBaseClient
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-ClientTimeoutPerRequest

指定一个服务请求的客户端超时间隔(以秒为单位)。 如果上一次调用在指定的时间间隔内失败,则此 cmdlet 将重试请求。 如果此 cmdlet 在间隔过前未收到成功的响应,则此 cmdlet 将返回错误。

类型:Nullable<T>[Int32]
别名:ClientTimeoutPerRequestInSeconds
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-CloudBlob

Azure 存储客户端库指定 CloudBlob 对象。 若要获取 CloudBlob 对象,请使用 Get-AzStorageBlob cmdlet。

类型:CloudBlob
别名:SrcICloudBlob, SrcCloudBlob, ICloudBlob, SourceICloudBlob, SourceCloudBlob
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-CloudBlobContainer

从 Azure 存储 客户端库指定 CloudBlobContainer 对象。 此 cmdlet 从此参数指定的容器复制 Blob。 若要获取 CloudBlobContainer 对象,请使用 Get-AzStorageContainer cmdlet。

类型:CloudBlobContainer
别名:SourceCloudBlobContainer
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-ConcurrentTaskCount

指定最大并发网络调用数。 可以使用此参数通过指定并发网络调用的最大数目来限制本地 CPU 和带宽使用量的并发性。 指定的值是绝对计数,不乘以核心计数。 此参数可帮助减少低带宽环境中的网络连接问题,例如每秒 100 千比特。 默认值为 10。

类型:Nullable<T>[Int32]
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Confirm

提示你在运行 cmdlet 之前进行确认。

类型:SwitchParameter
别名:cf
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

-Context

指定 Azure 存储上下文。 若要获取存储上下文,请使用 New-AzStorageContext cmdlet。

类型:IStorageContext
别名:SrcContext, SourceContext
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-DefaultProfile

用于与 Azure 通信的凭据、帐户、租户和订阅。

类型:IAzureContextContainer
别名:AzureRmContext, AzureCredential
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DestBlob

指定目标 Blob 的名称。

类型:String
别名:DestinationBlob
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-DestCloudBlob

指定目标 CloudBlob 对象

类型:CloudBlob
别名:DestICloudBlob, DestinationCloudBlob, DestinationICloudBlob
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-DestContainer

指定目标容器的名称。

类型:String
别名:DestinationContainer
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-DestContext

指定 Azure 存储上下文。 若要获取存储上下文,请使用 New-AzStorageContext cmdlet。

类型:IStorageContext
别名:DestinationContext
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-DestTagCondition

可选标记表达式语句,用于检查目标 Blob 上的匹配条件。 当目标 Blob 标记与给定表达式不匹配时,Blob 请求将失败。 请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations#tags-conditional-operations 中的详细信息。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Force

指示此 cmdlet 覆盖目标 Blob,而不提示你进行确认。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-PremiumPageBlobTier

高级页 Blob 层

类型:PremiumPageBlobTier
接受的值:Unknown, P4, P6, P10, P20, P30, P40, P50, P60, P70, P80
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RehydratePriority

块 Blob RehydratePriority。 指示用于解除存档 Blob 冻结的优先级。 有效值为 High/Standard。

类型:RehydratePriority
接受的值:Standard, High
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ServerTimeoutPerRequest

指定请求的服务端超时间隔(以秒为单位)。 如果服务处理请求之前指定的间隔已过,则存储服务将返回错误。

类型:Nullable<T>[Int32]
别名:ServerTimeoutPerRequestInSeconds
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-SrcBlob

指定源 Blob 的名称。

类型:String
别名:SourceBlob
Position:0
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-SrcContainer

指定源容器的名称。

类型:String
别名:SourceContainer
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-SrcDir

Azure 存储 客户端库指定 CloudFileDirectory 对象。

类型:CloudFileDirectory
别名:SourceDir
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-SrcFile

Azure 存储 客户端库指定 CloudFile 对象。 可以创建它或使用 Get-AzStorageFile cmdlet。

类型:CloudFile
别名:SourceFile
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-SrcFilePath

指定源目录或源共享的源文件相对路径。

类型:String
别名:SourceFilePath
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-SrcShare

Azure 存储客户端库指定 CloudFileShare 对象。 可以创建它或使用 Get-AzStorageShare cmdlet。

类型:CloudFileShare
别名:SourceShare
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-SrcShareName

指定源共享名称。

类型:String
别名:SourceShareName
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-StandardBlobTier

块 Blob 层,有效值为热/冷/存档/冷。 请参阅 中的详细信息 https://learn.microsoft.com/azure/storage/blobs/storage-blob-storage-tiers

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Tag

Blob 标记

类型:Hashtable
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-TagCondition

可选标记表达式语句,用于检查源 blob 上的匹配条件。 当源 Blob 标记与给定表达式不匹配时,Blob 请求将失败。 请参阅 https://learn.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations#tags-conditional-operations 中的详细信息。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-WhatIf

显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。

类型:SwitchParameter
别名:wi
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

输入

CloudBlob

CloudBlobContainer

CloudFile

String

IStorageContext

输出

AzureStorageBlob