You need to enable JavaScript to run this app.
导航

通过授权码下载对象(share-cp)

最近更新时间2024.02.29 20:16:17

首次发布时间2023.01.12 20:36:47

您可以通过 share-cp 命令,通过授权码将对象或者按照对象名称前缀批量下载对象到本地。

注意事项

使用该命令下载对象或批量下载对象前,请确保桶中的源对象没有发生变化,否则可能会导致下载数据不一致或者下载失败等问题。

命令格式

  • 通过授权码下载单个对象

    ./tosutil share-cp authorization_code|authorization_code_file_url file_url|folder_url [-key=xxx] [-dryRun] [-tempFileDir=xxx] [-u] [-vchecksum] [-p=1] [-threshold=104857600] [-ps=auto] [-cpd=xxx] [-versionId=xxx] [-fr] [-o=xxx] [-e=xxx] [-re=xxx] [-i=xxx] [-k=xxx] [-t=xxx] [-conf=xxx]
    
  • 通过授权码批量下载对象

    ./tosutil share-cp authorization_code|authorization_code_file_url folder_url -r [-key=xxx] [-dryRun] [-tempFileDir=xxx] [-u] [-vchecksum] [-flat] [-j=1] [-p=1] [-threshold=104857600] [-ps=auto] [-cpd=xxx] [-include=*.xxx] [-exclude=*.xxx] [-timeRange=time1-time2] [-dmf] [-o=xxx] [-e=xxx] [-re=xxx] [-i=xxx] [-k=xxx] [-t=xxx] [-conf=xxx]
    

参数说明

通用可选参数的说明,请参见通用可选参数

参数名

参数类型

描述

authorization_code

String

使用的授权码。

file://authorization_code_file_url

String

使用的授权码文件路径。

file_url

String

下载时的本地文件路径。

folder_url

String

下载对象时的本地文件夹路径。

-key

String

下载单个对象时的对象名称。

-dryRun

Bool

测试模式运行,不执行实际的下载操作。

-tempFileDir

String

分片下载时保存临时文件的文件夹,默认为配置文件中的 defaultTempFileDir

说明

  • 如果该值为空,且配置文件中的 defaultTempFileDir 也为空,则分片下载时生成的临时文件会保存在待下载文件的同目录下并以 .tos.temp 结尾。
  • 由于下载时生成的临时文件会保存在该目录,请确保运行 tosutil 的用户对该路径有写权限。该路径的可用空间需要大于待下载对象的大小。

-u

Bool

增量下载对象时,设置该参数后,会比较源端和目标端的数据是否一致,建议您在以下场景使用该参数:

  • 目标端不存在。
  • 目标端与源端的文件大小不一致。
  • 目标端的最后修改时间早于源端端的最后修改时间时进行执行对应的操作。

-vchecksum

Bool

下载对象时通过 CRC64 算法验证数据一致性。

-flat

Bool

下载对象时不包含相对父目录。

-j

Integer

批量任务的最大并发数,-j=1 表示批量任务的最大并发数为 1。默认为配置文件中的 defaultJobs,默认值为 1。

-p

Integer

每个分片任务的最大并发数,-p=1 表示分片任务的最大并发数为 1 。默认为配置文件中的 defaultParallels,默认值为 1。

-threshold

Integer

开启分片任务的阈值,单位:字节,默认为配置文件中的 defaultBigfileThreshold

说明

支持带容量单位配置,例如,配置 1MB 代表 1048576 字节。

-ps

Integer/String

每个分片任务的段大小,单位:字节,默认为配置文件中的 defaultPartSize

说明

支持带容量单位配置,例如,配置 1MB 代表 1048576 字节。

-cpd

String

生成断点记录文件的文件夹,默认为配置文件中的 defaultCheckpointDir

-versionId

String

下载单个对象的版本号。

-include

String

下载对象时对包含文件的名称匹配模式,支持 ?* 作为通配符以及 # 作为分隔符。

-exclude

String

下载对象时对不包含文件的名称匹配模式,支持 ?*作为通配符以及 # 作为分隔符。

-timeRange

String

下载对象时文件最后修改时间的时间段匹配模式,格式为:YYYYMMDDHHmmSS-YYYYMMDDHHmmSS

-dmf

Bool

设置名称匹配模式 -include/-exclude 和时间段匹配模式 -timeRange 对文件夹不生效。

-fr

Bool

操作单个对象时生成结果清单文件。

-o

String

生成结果清单文件的文件夹,默认为配置文件中的 defaultOutputDir

使用示例

下载单个对象

以下命令用于通过授权码将 bucketname 存储桶内的 object1.png 对象,下载至 /Users/Downloads/TOS/tosutil 文件夹。使用的授权码路径为 /tmp/tosutil/authorization_code

  • 命令

    ./tosutil share-cp file:///tmp/tosutil/authorization_code /Users/Downloads/TOS/tosutil -key=object1.png
    
  • 返回

    Start at 2022-10-27 10:56:20.611282 +0000 UTC
     
     
    Parallel:      1                   Jobs:          5                   
    Threshold:     100.00MB            PartSize:      auto                
    VerifyChecksum: false                         
    CheckpointDir: /Users/.tosutil_checkpoint
    TempFileDir: /Users/
    
    Waiting to prepare the temp file [93456].
    
    [-----------------------------------------------------------------------------] 100.00% 201.47KB/s 55.98KB/55.98KB 306ms
    Waiting to rename temporary file...
    
     
    Download successfully, 55.98KB, n/a, tos://bucketname/object1.png --> /Downloads/TOS/tosutil/object1.png, cost [106], status [200], request id [5c81485a63d4b1d7635a63d4-ac17b21f-1oo0Ye-GO-cb-tos-bj]
    The authorized prefix is empty, all the content of bucket can be accessed
    

批量下载对象

以下命令用于基于授权码将 bucketname 存储桶内的前缀为 object 的对象,下载至 /Users/Downloads/TOS/tosutil 文件夹。使用的授权码路径为 /tmp/tosutil/authorization_code

  • 命令

    ./tosutil share-cp file:///tmp/tosutil/authorization_code /Users/Downloads/TOS/tosutil -key=object -r
    
  • 返回

    Start at 2022-10-27 10:56:35.434563 +0000 UTC
     
     
    Parallel:      1                   Jobs:          5                   
    Threshold:     100.00MB            PartSize:      auto                
    VerifyChecksum: false                         
    CheckpointDir: /Users/.tosutil_checkpoint
    OutputDir: /Users/.tosutil_output
    TempFileDir: /Users/      
     
    [----------------------] 100.00% tps:51.09 3.02MB/s 4/4 238.21KB/238.21KB 278ms
    Succeed count is:   4         Failed count is:    0         
    Succeed bytes is:   238.21KB  
    Metrics [max cost:216 ms, min cost:163 ms, average cost:191.50 ms, average tps:14.23]
     
    Task id is: 0653482e-55e6-11ed-afb8-aa665a3c7f26
    The authorized prefix is empty, all the content of bucket can be accessed