腾讯云对象储存命令行工具COSCMD
腾讯云小鸡带宽只有1M,要下载备份的数据会很慢。但是小鸡到相同地域的对象储存是走内网,速度超快。所以可以将备份文件传输到对象储存,再进行下载。
腾讯云官方的文档很详细了,在此总结一下常用操作。
安装pip
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py
安装coscmd
pip install --upgrade pip
pip install --upgrade setuptools
pip install coscmd
如果有报错
ERROR: Cannot uninstall 'requests'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
将最后一句加个参数。(来源)pip install coscmd --ignore-installed
更新
pip install coscmd -U
配置
coscmd config -a <secret_id> -s <secret_key> -b <bucket_name>-<appid> -r <region> [-m <max_thread>] [-p <parts_size>]
- secret_id和secret_key在API密钥管理。
- bucket_name,在Bucket列表查看。
- appid,在账号信息查看。
- region,是对应地域的代码。
- max_thread,上传线程数(默认为5,范围为1 - 30)
- parts_size,上传切片大小(单位MB,默认为1MB,范围为1 - 1000)
使用
上传文件
#命令格式
coscmd upload <localpath> <cospath>
#操作示例
#将本地的 /data/exampleobject 文件上传到 cos 的 data/exampleobject 路径下
coscmd upload /data/exampleobject data/exampleobject
coscmd upload /data/exampleobject data/
#指定头部上传文件
#指定对象类型,上传一个归档的文件
coscmd upload /data/exampleobject data/exampleobject -H "{'x-cos-storage-class':'Archive'}"
上传文件夹
#命令格式
coscmd upload -r <localpath> <cospath>
#操作示例
coscmd upload -r /data/examplefolder data/examplefolder
#cos上的存储路径为 examplefolder2/examplefolder
coscmd upload -r /data/examplefolder examplefolder2/
#上传到 bucket 根目录
coscmd upload -r /data/examplefolder/ /
#同步上传,跳过 md5 相同的文件
coscmd upload -rs /data/examplefolder data/examplefolder
#同步上传,删除本地已经删除的文件
coscmd upload -rs --delete /data/examplefolder data/examplefolder
#忽略 .txt 和 .doc 的后缀文件
coscmd upload -rs /data/examplefolder data/examplefolder --ignore *.txt,*.doc
下载文件
#命令格式
coscmd download 远程文件路径 本地文件路径
#操作示例
coscmd download data/exampleobject /data/exampleobject
下载文件夹
#命令格式
coscmd download -r <cospath> <localpath>
#操作示例
coscmd download -r data/examplefolder/ /data/examplefolder
coscmd download -r data/examplefolder/ /data/
#覆盖下载当前bucket根目录下所有的文件
coscmd download -rf / /data/examplefolder
#同步下载当前 bucket 根目录下所有的文件,跳过 md5校验相同的文件
coscmd download -rs / /data/examplefolder
#同步下载当前 bucket 根目录下所有的文件,同时删除云上删除但本地未删除的文件
coscmd download -rs --delete / /data/examplefolder
#忽略 .txt 和 .doc 的后缀文件
coscmd download -rs / /data/examplefolder --ignore *.txt,*.doc
删除文件
#命令格式
coscmd delete <cospath>
#操作示例
coscmd delete data/exampleobject
删除文件夹
#命令格式
coscmd delete -r <cospath>
#操作示例
coscmd delete -r /data/examplefolder/
coscmd delete -r /
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。