az storage blob copy

Manage blob copy operations. Use az storage blob show to check the status of the blobs.

Commands

az storage blob copy cancel

Aborts a pending copy_blob operation, and leaves a destination blob with zero length and full metadata.

az storage blob copy start

Copy a blob asynchronously. Use az storage blob show to check the status of the blobs.

az storage blob copy start-batch

Copy multiple blobs to a blob container. Use az storage blob show to check the status of the blobs.

az storage blob copy cancel

Aborts a pending copy_blob operation, and leaves a destination blob with zero length and full metadata.

az storage blob copy cancel --copy-id
                            --destination-blob
                            --destination-container
                            [--account-key]
                            [--account-name]
                            [--auth-mode {key, login}]
                            [--connection-string]
                            [--lease-id]
                            [--sas-token]
                            [--timeout]

Required Parameters

--copy-id

Copy identifier provided in the copy.id of the original copy_blob operation.

--destination-blob -b

Name of the destination blob. If the exists, it will be overwritten.

--destination-container -c

The container name.

Optional Parameters

--account-key

Storage account key. Must be used in conjunction with storage account name. Environment variable: AZURE_STORAGE_KEY.

--account-name

Storage account name. Related environment variable: AZURE_STORAGE_ACCOUNT. Must be used in conjunction with either storage account key or a SAS token. If neither are present, the command will try to query the storage account key using the authenticated Azure account. If a large number of storage commands are executed the API quota may be hit.

--auth-mode

The mode in which to run the command. "login" mode will directly use your login credentials for the authentication. The legacy "key" mode will attempt to query for an account key if no authentication parameters for the account are provided. Environment variable: AZURE_STORAGE_AUTH_MODE.

accepted values: key, login
--connection-string

Storage account connection string. Environment variable: AZURE_STORAGE_CONNECTION_STRING.

--lease-id

Required if the destination blob has an active infinite lease.

--sas-token

A Shared Access Signature (SAS). Must be used in conjunction with storage account name. Environment variable: AZURE_STORAGE_SAS_TOKEN.

--timeout

Request timeout in seconds. Applies to each call to the service.

az storage blob copy start

Copy a blob asynchronously. Use az storage blob show to check the status of the blobs.

az storage blob copy start --destination-blob
                           --destination-container
                           [--account-key]
                           [--account-name]
                           [--auth-mode {key, login}]
                           [--blob-endpoint]
                           [--connection-string]
                           [--destination-if-match]
                           [--destination-if-modified-since]
                           [--destination-if-none-match]
                           [--destination-if-unmodified-since]
                           [--destination-lease-id]
                           [--destination-tags-condition]
                           [--metadata]
                           [--rehydrate-priority]
                           [--requires-sync {false, true}]
                           [--sas-token]
                           [--source-account-key]
                           [--source-account-name]
                           [--source-blob]
                           [--source-container]
                           [--source-if-match]
                           [--source-if-modified-since]
                           [--source-if-none-match]
                           [--source-if-unmodified-since]
                           [--source-lease-id]
                           [--source-path]
                           [--source-sas]
                           [--source-share]
                           [--source-snapshot]
                           [--source-tags-condition]
                           [--source-uri]
                           [--tags]
                           [--tier]
                           [--timeout]

Examples

Copy a blob asynchronously. Use `az storage blob show` to check the status of the blobs.

az storage blob copy start --account-key 00000000 --account-name MyAccount --destination-blob MyDestinationBlob --destination-container MyDestinationContainer --source-uri https://storage.blob.core.windows.net/photos

Copy a blob asynchronously. Use `az storage blob show` to check the status of the blobs.

az storage blob copy start --account-name MyAccount --destination-blob MyDestinationBlob --destination-container MyDestinationContainer --sas-token $sas --source-uri https://storage.blob.core.windows.net/photos

Copy a blob specific version

az storage blob copy start --account-name MyAccount --destination-blob MyDestinationBlob --destination-container MyDestinationContainer --source-uri https://my-account.blob.core.windows.net/my-container/my-blob?versionId=2022-03-21T18:28:44.4431011Z --auth-mode login

Required Parameters

--destination-blob -b

Name of the destination blob. If the exists, it will be overwritten.

--destination-container -c

The container name.

Optional Parameters

--account-key

Storage account key. Must be used in conjunction with storage account name or service endpoint. Environment variable: AZURE_STORAGE_KEY.

--account-name

Storage account name. Related environment variable: AZURE_STORAGE_ACCOUNT. Must be used in conjunction with either storage account key or a SAS token. If neither are present, the command will try to query the storage account key using the authenticated Azure account. If a large number of storage commands are executed the API quota may be hit.

--auth-mode

The mode in which to run the command. "login" mode will directly use your login credentials for the authentication. The legacy "key" mode will attempt to query for an account key if no authentication parameters for the account are provided. Environment variable: AZURE_STORAGE_AUTH_MODE.

accepted values: key, login
--blob-endpoint

Storage data service endpoint. Must be used in conjunction with either storage account key or a SAS token. You can find each service primary endpoint with az storage account show. Environment variable: AZURE_STORAGE_SERVICE_ENDPOINT.

--connection-string

Storage account connection string. Environment variable: AZURE_STORAGE_CONNECTION_STRING.

--destination-if-match

An ETag value, or the wildcard character (*). Specify this header to perform the operation only if the resource's ETag matches the value specified.

--destination-if-modified-since

A DateTime value. Azure expects the date value passed in to be UTC. If timezone is included, any non-UTC datetimes will be converted to UTC. If a date is passed in without timezone info, it is assumed to be UTC. Specify this conditional header to copy the blob only if the destination blob has been modified since the specified date/time. If the destination blob has not been modified, the Blob service returns status code 412 (Precondition Failed).

--destination-if-none-match

An ETag value, or the wildcard character (*). Specify this header to perform the operation only if the resource's ETag does not match the value specified. Specify the wildcard character (*) to perform the operation only if the resource does not exist, and fail the operation if it does exist.

--destination-if-unmodified-since

A DateTime value. Azure expects the date value passed in to be UTC. If timezone is included, any non-UTC datetimes will be converted to UTC. If a date is passed in without timezone info, it is assumed to be UTC. Specify this conditional header to copy the blob only if the destination blob has not been modified since the specified date/time. If the destination blob has been modified, the Blob service returns status code 412 (Precondition Failed).

--destination-lease-id

The lease ID specified for this header must match the lease ID of the estination blob. If the request does not include the lease ID or it is not valid, the operation fails with status code 412 (Precondition Failed).

--destination-tags-condition

Specify a SQL where clause on blob tags to operate only on blobs with a matching value.

--metadata

Metadata in space-separated key=value pairs. This overwrites any existing metadata.

--rehydrate-priority -r

Indicate the priority with which to rehydrate an archived blob.

--requires-sync

Enforce that the service will not return a response until the copy is complete.

accepted values: false, true
--sas-token

A Shared Access Signature (SAS). Must be used in conjunction with storage account name or service endpoint. Environment variable: AZURE_STORAGE_SAS_TOKEN.

--source-account-key

The storage account key of the source blob.

--source-account-name

The storage account name of the source blob.

--source-blob

The blob name for the source storage account.

--source-container

The container name for the source storage account.

--source-if-match

An ETag value, or the wildcard character (*). Specify this header to perform the operation only if the resource's ETag matches the value specified.

--source-if-modified-since

A DateTime value. Azure expects the date value passed in to be UTC. If timezone is included, any non-UTC datetimes will be converted to UTC. If a date is passed in without timezone info, it is assumed to be UTC. Specify this conditional header to copy the blob only if the source blob has been modified since the specified date/time.

--source-if-none-match

An ETag value, or the wildcard character (*). Specify this header to perform the operation only if the resource's ETag does not match the value specified. Specify the wildcard character (*) to perform the operation only if the resource does not exist, and fail the operation if it does exist.

--source-if-unmodified-since

A DateTime value. Azure expects the date value passed in to be UTC. If timezone is included, any non-UTC datetimes will be converted to UTC. If a date is passed in without timezone info, it is assumed to be UTC. Specify this conditional header to copy the blob only if the source blob has not been modified since the specified date/time.

--source-lease-id

Specify this to perform the Copy Blob operation only if the lease ID given matches the active lease ID of the source blob.

--source-path

The file path for the source storage account.

--source-sas

The shared access signature for the source storage account.

--source-share

The share name for the source storage account.

--source-snapshot

The blob snapshot for the source storage account.

--source-tags-condition

Specify a SQL where clause on blob tags to operate only on blobs with a matching value.

--source-uri -u

A URL of up to 2 KB in length that specifies an Azure file or blob. The value should be URL-encoded as it would appear in a request URI. If the source is in another account, the source must either be public or must be authenticated via a shared access signature. If the source is public, no authentication is required. Examples: https://myaccount.blob.core.windows.net/mycontainer/myblob, https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=<DateTime>, https://otheraccount.blob.core.windows.net/mycontainer/myblob?sastoken.

--tags

Space-separated tags: key[=value] [key[=value] ...]. Use "" to clear existing tags.

--tier

The tier value to set the blob to. For page blob, the tier correlates to the size of the blob and number of allowed IOPS. Possible values are P10, P15, P20, P30, P4, P40, P50, P6, P60, P70, P80 and this is only applicable to page blobs on premium storage accounts; For block blob, possible values are Archive, Cool and Hot. This is only applicable to block blobs on standard storage accounts.

--timeout

Request timeout in seconds. Applies to each call to the service.

az storage blob copy start-batch

Copy multiple blobs to a blob container. Use az storage blob show to check the status of the blobs.

az storage blob copy start-batch [--account-key]
                                 [--account-name]
                                 [--auth-mode {key, login}]
                                 [--connection-string]
                                 [--destination-container]
                                 [--destination-path]
                                 [--dryrun]
                                 [--pattern]
                                 [--sas-token]
                                 [--source-account-key]
                                 [--source-account-name]
                                 [--source-container]
                                 [--source-sas]
                                 [--source-share]
                                 [--source-uri]

Examples

Copy multiple blobs to a blob container. Use `az storage blob show` to check the status of the blobs. (autogenerated)

az storage blob copy start-batch --account-key 00000000 --account-name MyAccount --destination-container MyDestinationContainer --source-account-key MySourceKey --source-account-name MySourceAccount --source-container MySourceContainer

Optional Parameters

--account-key

Storage account key. Must be used in conjunction with storage account name. Environment variable: AZURE_STORAGE_KEY.

--account-name

Storage account name. Related environment variable: AZURE_STORAGE_ACCOUNT. Must be used in conjunction with either storage account key or a SAS token. If neither are present, the command will try to query the storage account key using the authenticated Azure account. If a large number of storage commands are executed the API quota may be hit.

--auth-mode

The mode in which to run the command. "login" mode will directly use your login credentials for the authentication. The legacy "key" mode will attempt to query for an account key if no authentication parameters for the account are provided. Environment variable: AZURE_STORAGE_AUTH_MODE.

accepted values: key, login
--connection-string

Storage account connection string. Environment variable: AZURE_STORAGE_CONNECTION_STRING.

--destination-container -c

The blob container where the selected source files or blobs will be copied to.

--destination-path

The destination path that will be prepended to the blob name.

--dryrun

List the files or blobs to be uploaded. No actual data transfer will occur.

--pattern

The pattern used for globbing files or blobs in the source. The supported patterns are '*', '?', '[seq]', and '[!seq]'. For more information, please refer to https://docs.python.org/3.7/library/fnmatch.html.

--sas-token

A Shared Access Signature (SAS). Must be used in conjunction with storage account name. Environment variable: AZURE_STORAGE_SAS_TOKEN.

--source-account-key

The account key for the source storage account.

--source-account-name

The source storage account from which the files or blobs are copied to the destination. If omitted, the source account is used.

--source-container

The source container from which blobs are copied.

--source-sas

The shared access signature for the source storage account.

--source-share

The source share from which files are copied.

--source-uri

A URI specifying a file share or blob container from which the files or blobs are copied.