华为云对象存储OBS上传示例_云淘科技

本章节案例中的所有命令均以Linux操作系统为例,提供上传操作指导。

假设本地文件夹的格式如下:

└── src1
    ├── src2
        ├── test1.txt
        └── test2.txt
    ├── src3
    └── test3.txt

基于以上文件夹格式,不同上传场景的命令示例如下:

上传本地src1文件夹下的test3.txt文件至bucket-test桶的根目录,命令如下:

./obsutil cp /src1/test3.txt  obs://bucket-test

成功上传后,桶内生成对象为:

./obs://bucket-test/test3.txt

上传本地src1文件夹下的test3.txt文件至bucket-test桶的根目录,并且重命名为aaa.txt,命令如下:

./obsutil cp /src1/test3.txt  obs://bucket-test/aaa.txt

成功上传后,桶内生成对象为:

./obs://bucket-test/aaa.txt

上传本地src1文件夹下的test3.txt文件至bucket-test桶的src文件夹中,命令如下:

./obsutil cp /src1/test3.txt  obs://bucket-test/src/

成功上传后,桶内生成对象为:

./obs://bucket-test/src/test3.txt

递归上传本地src2文件夹中的所有文件(包括src2文件夹本身)至bucket-test桶的根目录,且上传过程中不进行询问操作,命令如下:

./obsutil cp /src1/src2  obs://bucket-test -r -f

成功上传后,桶内生成对象为:

obs://bucket-test/src2/
obs://bucket-test/src2/test1.txt
obs://bucket-test/src2/test2.txt

递归上传本地src1文件夹中的所有文件和文件夹(包括src1文件夹本身)至bucket-test桶的src文件夹下,且上传过程中不进行询问操作,命令如下:

./obsutil cp /src1  obs://bucket-test/src -r -f

成功上传后,桶内生成对象为:

obs://bucket-test/src/src1/
obs://bucket-test/src/src1/src2/
obs://bucket-test/src/src1/src2/test1.txt
obs://bucket-test/src/src1/src2/test2.txt
obs://bucket-test/src/src1/src3/
obs://bucket-test/src/src1/test3.txt

递归上传本地src1文件夹中的所有文件和文件夹(不包括src1文件夹本身)至bucket-test桶的src文件夹下,且上传过程中不进行询问操作,命令如下:

./obsutil cp /src1  obs://bucket-test/src -r -f -flat

成功上传后,桶内生成对象为:

obs://bucket-test/src/
obs://bucket-test/src/src2/
obs://bucket-test/src/src2/test1.txt
obs://bucket-test/src/src2/test2.txt
obs://bucket-test/src/src3/
obs://bucket-test/src/test3.txt

上传本地file1文件至bucket-test桶下,且上传过程中失败,断点续传,命令如下:

./obsutil cp /file1  obs://bucket-test/file -f

上传失败。结果如下:

./obsutil cp /file1 obs://bucket-test/file -f

Parallel:      3                   Jobs:          3
Threshold:     524288000           PartSize:      5242880
Exclude:                           Include:
VerifyLength:  false               VerifyMd5:     false
CheckpointDir: xxxx

[=================================__________________] 66.08% ?/s 3.35GB/4.88GB ?

再次执行同上命令断点续传。结果如下:

obsutil cp /file1 obs://bucket-test/file -f
Parallel:      3                   Jobs:          3
Threshold:     524288000           PartSize:      5242880
Exclude:                           Include:
VerifyLength:  false               VerifyMd5:     false
CheckpointDir: xxxx

[====================================================] 100% 307.42MB/s 4.88GB/4.88GB 5.308s
Upload successfully, 4.88GB, n/a, /file1 --> obs://bucket-test/file, cost [6325], status [200], request id [xxxxx]

增量上传本地src1文件夹下的所有文件和文件夹至bucket-test桶的src目录,命令如下:

./obsutil cp /src1  obs://bucket-test/src -f -r -u

上传成功4个对象,1个为新增对象,执行结果出现Skip count字样。

./obsutil cp /src1 obs://bucket-test/src -f -r -u
Parallel:      3                   Jobs:          3
Threshold:     524288000           PartSize:      5242880
Exclude:                           Include:
VerifyLength:  false               VerifyMd5:     false
CheckpointDir: xxxx

[====================================================] 100% tps:0.00 ?/s 2.09KB/2.09KB 5ms
Succeed count is:   4         Failed count is:    0         Skip count is:      3
Succeed bytes is:   2.09KB
Metrics [max cost:6 ms, min cost:6 ms, average cost:1.50 ms, average tps:52.63, uploaded size :2.09KB]

排除上传本地src1文件夹中src2及其包含的所有文件和文件夹,命令如下:

./obsutil cp /src1  obs://bucket-test/src -exclude "*src1/src2*" -f -r -mf

上传成功5个对象,上传信息中包含Exclude及内容字样。

./obsutil cp /src1  obs://bucket-test/src -exclude "*src1/src2*" -f -r -mf

Parallel:      5                   Jobs:          5
Threshold:     50.00MB             PartSize:      auto
VerifyLength:  false               VerifyMd5:     false
Exclude:       *src1/src2*
Include:
CheckpointDir: xxxx
OutputDir: xxxx

[====================================================] 100.00% tps:35.82 ?/s 5/5 2.39KB/2.39KB 340ms
Succeed count is:   3         Failed count is:    0
Succeed bytes is:   2.39KB
Metrics [max cost:338 ms, min cost:91 ms, average cost:240.40 ms, average tps:14.62, transfered size:2.39KB]

成功上传后,桶内生成对象为:

obs://bucket-test/src/src1/
obs://bucket-test/src/src1/src3/
obs://bucket-test/src/src1/test3.txt

断点续传仅支持大文件,即:文件大小大于5GB或文件大小大于设置的threshold(默认50MB)。

父主题: 常见示例

同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家