Share via


Start-AzureStorageBlobCopy

開始複製 Blob。

警告

自 2024 年 2 月 29 日起,AzureRM PowerShell 模組已正式淘汰。 建議使用者從 AzureRM 遷移至 Az PowerShell 模組,以確保持續支援和更新。

雖然 AzureRM 模組可能仍可運作,但不再維護或支援它,但會根據用戶的判斷權和風險放置任何繼續使用。 如需轉換至 Az 模組的指引,請參閱我們的 移轉資源

Syntax

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

Description

Start-Azure 儲存體 BlobCopy Cmdlet 會開始複製 Blob。

範例

範例 1:複製具名 Blob

C:\PS>Start-AzureStorageBlobCopy -SrcBlob "ContosoPlanning2015" -DestContainer "ContosoArchives" -SrcContainer "ContosoUploads"

此命令會啟動名為 ContosoPlanning2015 之 Blob 的複製作業,從名為 ContosoUploads 的容器複製到名為 ContosoArchives 的容器。

範例 2:取得容器以指定要複製的 Blob

C:\PS>Get-AzureStorageContainer -Name "ContosoUploads" | Start-AzureStorageBlobCopy -SrcBlob "ContosoPlanning2015" -DestContainer "ContosoArchives"

此命令會使用 Get-Azure 儲存體 Container Cmdlet 取得名為 ContosoUploads 的容器,然後使用管線運算子將容器傳遞至目前的 Cmdlet。 該 Cmdlet 會啟動名為 ContosoPlanning2015 之 Blob 的複製作業。 先前的 Cmdlet 提供來源容器。 DestContainer 參數會將 ContosoArchives 指定為目的地容器。

範例 3:取得容器中的所有 Blob 並加以複製

C:\PS>Get-AzureStorageBlob -Container "ContosoUploads" | Start-AzureStorageBlobCopy -DestContainer "ContosoArchives"

此命令會使用 Get-Azure 儲存體 Blob Cmdlet,取得名為 ContosoUploads 的容器中的 Blob,然後使用管線運算符將結果傳遞至目前的 Cmdlet。 該 Cmdlet 會啟動 Blob 的複製作業至名為 ContosoArchives 的容器。

範例 4:複製指定為 物件的 Blob

C:\PS>$SrcBlob = Get-AzureStorageBlob -Container "ContosoUploads" -Blob "ContosoPlanning2015"
C:\PS> $DestBlob = Get-AzureStorageBlob -Container "ContosoArchives" -Blob "ContosoPlanning2015Archived"
C:\PS> Start-AzureStorageBlobCopy -ICloudBlob $SrcBlob.ICloudBlob -DestICloudBlob $DestBlob.ICloudBlob

第一個命令會在名為 ContosoUploads 的容器中取得名為 ContosoPlanning2015 的 Blob。 命令會將該物件儲存在 $SrcBlob 變數中。 第二個命令會取得名為 ContosoPlanning2015Archived 的容器中名為 ContosoArchives 的 Blob。 命令會將該物件儲存在 $DestBlob 變數中。 最後一個命令會啟動從來源容器到目的地容器的複製作業。 此命令會使用標準點表示法來指定 $SrcBlob和$DestBlob Blob 的 ICloudBlob 物件。

範例 5:從 URI 複製 Blob

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

此命令會建立名為 ContosoGeneral 的帳戶內容,該帳戶會使用指定的密鑰,然後將該密鑰儲存在$Context變數中。 第二個命令會將檔案從指定的 URI 複製到名為 ContosoArchive 的容器中名為 ContosoPlanning 的 Blob。 命令會在儲存在 $Context的內容中啟動複製作業。

參數

-AbsoluteUri

指定要複製到 Azure 儲存體 Blob 之檔案的絕對 URI。

Type:String
Aliases:SrcUri, SourceUri
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ClientTimeoutPerRequest

指定一個服務要求的用戶端超時時間間隔,以秒為單位。 如果先前的呼叫在指定的間隔內失敗,此 Cmdlet 會重試要求。 如果此 Cmdlet 在間隔經過之前未收到成功的回應,此 Cmdlet 會傳回錯誤。

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CloudBlob

從 Azure 儲存體 客戶端連結庫指定 CloudBlob 物件。 若要取得 CloudBlob 物件,請使用 Get-Azure 儲存體 Blob Cmdlet。

Type:CloudBlob
Aliases:SrcICloudBlob, SrcCloudBlob, ICloudBlob, SourceICloudBlob, SourceCloudBlob
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-CloudBlobContainer

Azure 儲存體 客戶端連結庫指定 CloudBlobContainer 物件。 此 Cmdlet 會從此參數指定的容器複製 Blob。 若要取得 CloudBlobContainer 物件,請使用 Get-Azure 儲存體 Container Cmdlet。

Type:CloudBlobContainer
Aliases:SourceCloudBlobContainer
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ConcurrentTaskCount

指定並行網路呼叫上限。 您可以藉由指定並行網路呼叫數目上限,使用此參數來限制並行 CPU 和頻寬使用量的並行存取。 指定的值是絕對計數,不會乘以核心計數。 此參數可協助減少低頻寬環境中的網路連線問題,例如每秒 100 千位。 預設值為 10。

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

執行 Cmdlet 之前先提示您確認。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Context

指定 Azure 記憶體內容。 若要取得記憶體內容,請使用 New-Azure 儲存體 Context Cmdlet。

Type:IStorageContext
Aliases:SrcContext, SourceContext
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DefaultProfile

用於與 Azure 通訊的認證、帳戶、租用戶和訂用帳戶。

Type:IAzureContextContainer
Aliases:AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DestBlob

指定目的地 Blob 的名稱。

Type:String
Aliases:DestinationBlob
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-DestCloudBlob

指定目的地 CloudBlob 物件

Type:CloudBlob
Aliases:DestICloudBlob, DestinationCloudBlob, DestinationICloudBlob
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-DestContainer

指定目的地容器的名稱。

Type:String
Aliases:DestinationContainer
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-DestContext

指定 Azure 記憶體內容。 若要取得記憶體內容,請使用 New-Azure 儲存體 Context Cmdlet。

Type:IStorageContext
Aliases:DestinationContext
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

指出此 Cmdlet 會覆寫目的地 Blob,而不提示您進行確認。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PremiumPageBlobTier

進階版 分頁 Blob 層

Type:PremiumPageBlobTier
Accepted values:Unknown, P4, P6, P10, P20, P30, P40, P50, P60
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ServerTimeoutPerRequest

指定要求的服務端超時時間間隔,以秒為單位。 如果指定的間隔在服務處理要求之前經過,則記憶體服務會傳回錯誤。

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SrcBlob

指定來源 Blob 的名稱。

Type:String
Aliases:SourceBlob
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-SrcContainer

指定來源容器的名稱。

Type:String
Aliases:SourceContainer
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-SrcDir

從 Azure 儲存體 客戶端連結庫指定 CloudFileDirectory 物件。

Type:CloudFileDirectory
Aliases:SourceDir
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-SrcFile

從 Azure 儲存體客戶端連結庫指定 CloudFile 物件。 您可以建立它或使用 Get-Azure 儲存體 File Cmdlet。

Type:CloudFile
Aliases:SourceFile
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-SrcFilePath

指定來源目錄或來源共用的來源檔案相對路徑。

Type:String
Aliases:SourceFilePath
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-SrcShare

從 Azure 儲存體 客戶端連結庫指定 CloudFileShare 物件。 您可以建立它或使用 Get-Azure 儲存體 Share Cmdlet。

Type:CloudFileShare
Aliases:SourceShare
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-SrcShareName

指定來源共享名稱。

Type:String
Aliases:SourceShareName
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

顯示執行 Cmdlet 後會發生的情況。 未執行 Cmdlet。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

輸入

CloudBlob

CloudBlobContainer

CloudFile

參數:SrcFile (ByValue)

String

IStorageContext

輸出

AzureStorageBlob