常用对象命令

最近更新时间: 2023-03-22 10:00:52

上传文件
上传文件命令格式
coscmd upload
注意:请将 "<>" 中的参数替换为您需要上传的本地文件路径(localpath),以及 COS 上存储的路径(cospath)。
操作示例 - 将 D 盘的 picture.jpg 文件上传到 COS 的 doc 目录下
coscmd upload D:/picture.jpg doc/
操作示例 - 指定对象类型,上传一个归档类型的文件到 COS 的 doc 目录下
coscmd upload D:/picture.jpg doc/ -H "{'x-cos-storage-class':'Archive'}" 注意: 使用 -H 参数设置 HTTP header 时,请务必保证格式为 JSON,示例:coscmd upload -H "{'x-cos-storage-class':'Archive','Content-Language':'zh-CN'}" 。 操作示例 - 设置 meta 元属性,上传一个文件到 COS 的 doc 目录下
coscmd upload D:/picture.jpg doc/ -H "{'x-cos-meta-example':'example'}"
上传文件夹
上传文件夹命令格式
coscmd upload -r
注意:Windows 用户推荐在系统自带的 cmd 工具或 PowerShell 上使用 COSCMD 的 upload 命令,其他工具(如 git bash)对命令路径的解析策略与 PowerShell 不同,可能会导致用户的文件被上传到错误的路径上去。
操作示例 - 将 D 盘的 doc 文件夹及其文件上传到 COS 根路径
coscmd upload -r D:/doc /
操作示例 - 将 D 盘的 doc 文件夹及其文件上传到 COS 的 doc 路径
coscmd upload -r D:/doc doc
操作示例 - 同步上传,跳过 md5、文件大小相同的同名文件
coscmd upload -rs D:/doc doc
注意:使用 -s 参数可以使用同步上传,跳过上传 md5 一致的文件(COS 上的原文件必须是由 1.8.3.2 版本之后的 COSCMD 上传的,默认带有 x-cos-meta-md5 的 header)。 操作示例 - 同步上传,跳过文件大小相同的同名文件
coscmd upload -rs --skipmd5 D:/doc doc
注意:使用 -s 参数可以使用同步上传,且带上 --skipmd5 参数后,将只对比同名文件的大小,如果大小相同则跳过上传。
操作示例 - 同步上传,并删除 “D 盘 doc 文件夹中已经删除的文件”
coscmd upload -rs --delete D:/doc /
操作示例 - D 盘 doc 文件夹中 .txt 和 .doc 的后缀文件选择忽略上传
coscmd upload -rs D:/doc / --ignore .txt,.doc
注意:在上传文件夹时,使用 --ignore 参数可以忽略某一类文件,使用 --include 参数可以过滤某一类文件,支持 shell 通配规则,支持多条规则,用逗号,分隔。当忽略一类后缀时,必须最后要输入, 或者加入""。
操作示例 - D 盘 doc 文件夹中 .txt 和 .doc 的后缀文件上传
coscmd upload -rs D:/doc / --include .txt,.doc
注意:

  • 当上传大于10MB的文件,COSCMD 即采用分块上传方式,命令用法和简单上传一致,即 coscmd upload 。
  • COSCMD 支持大文件断点上传功能;当分块上传大文件失败时,重新上传该文件只会上传失败的分块,而不会从头开始(请保证重新上传的文件的目录以及内容和上传的目录保持一致)。
  • COSCMD 分块上传时会对每一块进行 MD5 校验。
  • COSCMD 上传默认会携带 x-cos-meta-md5 的头部,值为该文件的 md5 值,如果带上 --skipmd5 参数则不携带该头部。
  • 查询文件列表*
    查询命令如下:
    命令格式
    coscmd list
    操作示例 - 递归查询该存储桶下 doc/ 前缀下所有的文件列表
    coscmd list doc/
    操作示例 - 递归查询该存储桶下所有的文件列表、文件数量和文件大小
    coscmd list -ar
    操作示例 - 递归查询 examplefolder 前缀的所有文件列表
    coscmd list examplefolder/ -ar
    操作示例 - 查询该存储桶下所有文件的历史版本
    coscmd list -v
    说明:
    请将"<>"中的参数替换为您需要查询文件列表的 COS 上文件的路径(cospath)。 为空默认查询当前存储桶根目录。
    使用 -a 查询全部文件。
    使用 -r 递归查询,并且会在末尾返回列出文件的数量和大小之和。
    使用 -n num 设置查询数量的最大值。
  • 查看文件信息*
    命令如下:
    命令格式
    coscmd info
    操作示例 - 查看 doc/picture.jpg 的元信息
    coscmd info doc/picture.jpg
    说明:请将"<>"中的参数替换为您需要显示的 COS 上文件的路径(cospath)。

文件或文件夹命令
下载文件命令格式
coscmd download
注意: 请将 "<>" 中的参数替换为您需要下载的 COS 上文件的路径(cospath),以及本地存储路径(localpath)。
操作示例 - 下载 COS 上的 doc/picture.jpg 到 D:/picture.jpg
coscmd download doc/picture.jpg D:/picture.jpg
操作示例 - 下载 COS 上的 doc/picture.jpg 到 D 盘
coscmd download doc/picture.jpg D:/
操作示例 - 下载一个带有版本 ID 的 picture.jpg 文件到 D 盘
coscmd download picture.jpg --versionId MTg0NDUxMzc2OTM4NTExNTg7Tjg D:/
下载文件夹命令格式
coscmd download -r
操作示例 - 下载 doc 目录为 D:/folder/doc
coscmd download -r doc D:/folder/
操作示例 - 下载根目录文件,但跳过根目录下的 doc 目录
coscmd download -r / D:/ --ignore doc/* 操作示例 - 覆盖下载当前存储桶根目录下所有的文件
coscmd download -rf / D:/examplefolder/
注意:若本地存在同名文件,则会下载失败,需要使用 -f 参数覆盖本地文件。
操作示例 - 同步下载当前 bucket 根目录下所有的文件,跳过 md5校验相同的同名文件 coscmd download -rs / D:/examplefolder
注意:使用 -s 或者 --sync 参数,可以在下载文件夹时跳过本地已存在的相同文件(前提是下载的文件是通过 COSCMD 的 upload 接口上传的,文件携带有 x-cos-meta-md5 头部)。
操作示例 - 同步下载当前 bucket 根目录下所有的文件,跳过文件大小相同的同名文件 coscmd download -rs --skipmd5 / D:/examplefolder
操作示例 - 同步下载当前 bucket 根目录下所有的文件,同时删除“云上删除但本地未删除的文件”
coscmd download -rs --delete / D:/examplefolder
操作示例 - 忽略 .txt 和 .doc 的后缀文件
coscmd download -rs / D:/examplefolder --ignore .txt,.doc
注意:在下载文件夹时,使用 --ignore 参数可以忽略某一类文件,使用 --include 参数可以过滤某一类文件,支持 shell 通配规则,支持多条规则,用逗号,分隔。当忽略一类后缀时,必须最后要输入,或者使用双引号""。 操作示例 - 过滤 .txt 和 .doc 的后缀文件
coscmd download -rs / D:/examplefolder --include .txt,.doc
注意:老版本的 mget 接口已经废除,download 接口使用分块下载,请使用 download 接口。
获取带签名的下载 URL
命令格式
coscmd signurl
操作示例 - 生成 doc/picture.jpg 路径带签名的 URL
coscmd signurl doc/picture.jpg
操作示例 - 生成 doc/picture.jpg 路径带 100s 签名的 URL
coscmd signurl doc/picture.jpg -t 100
说明:
请将 "<>" 中的参数替换为您需要获取下载 URL 的 COS 上文件的路径(cospath)。
使用 -t time 设置该 URL 中签名的有效时间(单位为秒), 默认为10000s。
删除文件命令格式
coscmd delete
说明:请将"<>"中的参数替换为您需要删除的 COS 上文件的路径(cospath),工具会提示用户是否确认进行删除操作。
操作示例 - 删除 doc/exampleobject.txt
coscmd delete doc/exampleobject.txt
操作示例 - 删除带有版本 ID 的文件
coscmd delete doc/exampleobject.txt --versionId MTg0NDUxMzc4ODA3NTgyMTErEWN
删除文件夹命令格式
coscmd delete -r
操作示例 - 删除 doc 目录
coscmd delete -r doc
操作示例 - 删除 folder/doc 目录
coscmd delete -r folder/doc
操作示例 - 删除 doc 文件夹下的所有版本控制文件
coscmd delete -r doc/ --versions
说明:
批量删除需要输入 y 确定,使用 -f 参数则可以跳过确认直接删除。
需注意,执行删除文件夹命令,将会删除当前文件夹及其文件。但删除版本控制的文件,需要指定版本 ID 进行删除。
** 查询分块上传文件碎片** 命令格式
coscmd listparts
操作示例 - 查询 doc/ 前缀的文件碎片
coscmd listparts doc/
清除分块上传文件碎片
命令格式
coscmd abort
操作示例 - 消除所有上传文件碎片
coscmd abort
复制文件或文件夹
复制文件命令格式 coscmd copy
操作示例 - 在同个存储桶内进行复制,将 examplebucket-1250000000 存储桶下的 picture.jpg 文件复制到 doc 文件夹下
coscmd -b examplebucket-1250000000 -r bj copy examplebucket-1250000000.cos.bj.yunxxx.ccbcos.com/picture.jpg doc/
操作示例 - 在不同存储桶内进行复制,复制 examplebucket2-1250000000 存储桶下的 doc/picture.jpg 对象到 examplebucket1-1250000000 存储桶的 doc/examplefolder/ coscmd -b examplebucket1-1250000000 -r bj copy examplebucket-1250000000.cos.bj.yunxxx.ccbcos.com /doc/picture.jpg doc/examplefolder/
移动文件或文件夹
注意:移动命令的 和 不能相同,否则会导致文件被删除。原因在于 move 命令会先复制,再删除, 路径下的文件最终会被删除。
移动文件命令格式
coscmd move
设置对象访问权限
命令格式
coscmd putobjectacl --grant-
操作示例 - 授予账号 100000000001 拥有 picture.jpg 的读取权限
coscmd putobjectacl --grant-read 100000000001 picture.jpg
操作示例 - 查询文件的访问权限
coscmd getobjectacl picture.jpg
开启/暂停版本控制
命令格式
coscmd putbucketversioning
操作示例 - 开启版本控制
coscmd putbucketversioning Enabled
操作示例 - 暂停版本控制
coscmd putbucketversioning Suspended
操作示例 - 查询版本控制
coscmd getbucketversioning
注意:
请将 "<>" 中的参数替换为您需要版本控制状态(status)。
一旦您对存储桶启用了版本控制,它将无法返回到未启用版本控制状态(初始状态)。但是,您可以对该存储桶暂停版本控制,这样后续上传的对象将不会产生多个版本。
恢复归档文件
恢复归档文件命令格式
coscmd restore
操作示例 - 快速取回模式回热 picture.jpg ,有效期3天
coscmd restore -d 3 -t Expedited picture.jpg
批量恢复归档文件命令格式
coscmd restore -r
操作示例 - 快速取回模式回热 examplefolder/ 目录,有效期3天
coscmd restore -r -d 3 -t Expedited examplefolder/
说明:
请将 "<>" 中的参数替换为您需要查询文件列表的 COS 上文件的路径(cospath)。
使用 -d 设置临时副本的过期时间,默认值:7。
使用 -t 指定恢复模式,枚举值:Expedited (快速取回模式),Standard (标准取回模式),Bulk(批量取回模式),默认值:Standard。