Freigeben über


Copy-AzStorageBlob

Kopieren Sie ein BLOB synchron.

Syntax

Copy-AzStorageBlob
    [-SrcBlob] <String>
    -SrcContainer <String>
    -DestContainer <String>
    [-DestBlob <String>]
    [-DestBlobType <String>]
    [-StandardBlobTier <String>]
    [-RehydratePriority <RehydratePriority>]
    [-EncryptionScope <String>]
    [-Context <IStorageContext>]
    [-DestContext <IStorageContext>]
    [-Force]
    [-AsJob]
    [-TagCondition <String>]
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]
Copy-AzStorageBlob
    [-BlobBaseClient <BlobBaseClient>]
    -DestContainer <String>
    [-DestBlob <String>]
    [-DestBlobType <String>]
    [-StandardBlobTier <String>]
    [-RehydratePriority <RehydratePriority>]
    [-EncryptionScope <String>]
    [-Context <IStorageContext>]
    [-DestContext <IStorageContext>]
    [-Force]
    [-AsJob]
    [-TagCondition <String>]
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]
Copy-AzStorageBlob
    -AbsoluteUri <String>
    -DestContainer <String>
    -DestBlob <String>
    [-DestBlobType <String>]
    [-StandardBlobTier <String>]
    [-RehydratePriority <RehydratePriority>]
    [-EncryptionScope <String>]
    [-Context <IStorageContext>]
    [-DestContext <IStorageContext>]
    [-Force]
    [-AsJob]
    [-TagCondition <String>]
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Beschreibung

Das Cmdlet Copy-AzStorageBlob kopiert ein Blob synchron, unterstützt derzeit nur block blob.

Beispiele

Beispiel 1: Kopieren eines benannten Blobs in einen anderen

$destBlob = Copy-AzStorageBlob -SrcContainer "sourcecontainername" -SrcBlob "srcblobname" -DestContainer "destcontainername" -DestBlob "destblobname"

Mit diesem Befehl wird ein Blob aus dem Quellcontainer in den Zielcontainer mit einem neuen Blobnamen kopiert.

Beispiel 2: Kopieren eines BLOB-Objekts aus einem BLOB-Objekt

$srcBlob = Get-AzStorageBlob -Container $containerName -Blob $blobName  -Context $ctx 
$destBlob =  $srcBlob | Copy-AzStorageBlob  -DestContainer "destcontainername" -DestBlob "destblobname"

Mit diesem Befehl wird ein Blob aus dem Quell-BLOB-Objekt in den Zielcontainer mit einem neuen Blobnamen kopiert.

Beispiel 3: Kopieren eines Blobs aus einem BLOB-URI

$srcBlobUri = New-AzStorageBlobSASToken -Container $srcContainerName -Blob $srcBlobName -Permission rt -ExpiryTime (Get-Date).AddDays(7) -FullUri 
$destBlob = Copy-AzStorageBlob -AbsoluteUri $srcBlobUri -DestContainer "destcontainername" -DestBlob "destblobname"

Der erste Befehl erstellt einen BLOB-URI des Quell-Blobs mit sas-Token der Berechtigung "rt". Der zweite Befehl kopiert den Quell-BLOB-URI in das Ziel-Blob.

Beispiel 4: Aktualisieren eines Block-BLOB-Verschlüsselungsbereichs

$blob = Copy-AzStorageBlob -SrcContainer $containerName -SrcBlob $blobname -DestContainer $containername -EncryptionScope $newScopeName -Force

Mit diesem Befehl wird ein Block-BLOB-Verschlüsselungsbereich aktualisiert, indem er mit einem neuen Verschlüsselungsbereich in sich selbst kopiert wird.

Beispiel 5: Kopieren eines Blobs in ein neues Anfüge-Blob

$srcBlob = Get-AzStorageBlob -Container $containerName -Blob $blobName  -Context $ctx 
$destBlob = Copy-AzStorageBlob -SrcContainer "sourcecontainername" -SrcBlob "srcblobname" -DestContainer "destcontainername" -DestBlob "destblobname" -DestBlobType "Append" -DestContext $destCtx

Parameter

-AbsoluteUri

Quell-BLOB-URI

Typ:String
Aliase:SrcUri, SourceUri
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-AsJob

Cmdlet im Hintergrund ausführen

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-BlobBaseClient

BlobBaseClient-Objekt

Typ:BlobBaseClient
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Confirm

Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.

Typ:SwitchParameter
Aliase:cf
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Context

Quell-Azure Storage-Kontextobjekt

Typ:IStorageContext
Aliase:SrcContext, SourceContext
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-DefaultProfile

Anmeldeinformationen, Konto, Mandant und Abonnement für die Kommunikation mit Azure

Typ:IAzureContextContainer
Aliase:AzureRmContext, AzureCredential
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DestBlob

Zielblobname

Typ:String
Aliase:DestinationBlob
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DestBlobType

Ziel-BLOB-Typ

Typ:String
Zulässige Werte:Block, Page, Append
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DestContainer

Name des Zielcontainers

Typ:String
Aliase:DestinationContainer
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DestContext

Zielspeicherkontextobjekt

Typ:IStorageContext
Aliase:DestinationContext
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-EncryptionScope

Verschlüsselungsbereich, der beim Senden von Anforderungen an das Dest-Blob verwendet werden soll.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Force

Erzwingen, das vorhandene Blob oder die vorhandene Datei zu überschreiben

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-RehydratePriority

Blob RehydratePriority blockieren. Gibt die Priorität an, mit der ein archiviertes Blob rehydratiert werden soll. Gültige Werte sind "Hoch/Standard".

Typ:RehydratePriority
Zulässige Werte:Standard, High
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SrcBlob

Blobname

Typ:String
Aliase:SourceBlob
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SrcContainer

Name des Quellcontainers

Typ:String
Aliase:SourceContainer
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-StandardBlobTier

Block Blob Tier, gültige Werte sind Hot/Cool/Archive/Cold. Details anzeigen in https://learn.microsoft.com/en-us/azure/storage/blobs/storage-blob-storage-tiers

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-TagCondition

Optionale Tag-Ausdrucksanweisung zum Überprüfen der Übereinstimmungsbedingung. Die BLOB-Anforderung schlägt fehl, wenn die Blobtags nicht mit dem angegebenen Ausdruck übereinstimmen. Weitere Informationen finden Sie unter https://learn.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations#tags-conditional-operations.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-WhatIf

Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Typ:SwitchParameter
Aliase:wi
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

BlobBaseClient

String

IStorageContext

Ausgaben

AzureStorageBlob