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 start

List blobs in a given container.

az storage blob copy start

List blobs in a given container.

az storage blob copy start --destination-blob
                           --destination-container
                           [--account-key]
                           [--account-name]
                           [--auth-mode {key, login}]
                           [--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

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. 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-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. 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] ...]. Tags are case-sensitive. The tag set may contain at most 10 tags. Tag keys must be between 1 and 128 characters, and tag values must be between 0 and 256 characters. Valid tag key and value characters include: lowercase and uppercase letters, digits (0-9), space ( ), plus (+), minus (-), period (.), solidus (/), colon (:), equals (=), underscore (_).

--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.