Copy-file-by-id command

Copy a file version to the given bucket (server-side, not via download+upload). Copies the contents of the source B2 file to destination bucket and assigns the given name to the new B2 file.

By default, it copies the file info and content type. You can replace those by setting the metadataDirective to “replace”.

—contentType and –info should only be provided when –metadataDirective is set to “replace” and should not be provided when –metadataDirective is set to “copy”.

–contentType and –info are optional. If not set, they will be set based on the source file.

By default, the whole file gets copied, but you can copy an (inclusive!) range of bytes from the source file to the new file using –range option.

Each –info entry is in the form “a=b”, you can specify many.

The maximum file size is 5GB or 10TB, depending on capability of installed b2sdk version.

Requires capability: readFiles (if sourceFileId bucket is private) and writeFiles

b2 copy-file-by-id [-h] [--metadataDirective {copy,replace}]
                   [--contentType CONTENTTYPE] [--range RANGE] [--info INFO]
                   sourceFileId destinationBucketName b2FileName

Positional Arguments

sourceFileId
destinationBucketName
b2FileName

Named Arguments

--metadataDirective

Possible choices: copy, replace

--contentType
--range
--info

Default: []