更新时间:2024-09-03 GMT+08:00

删除对象

功能说明

  • 删除指定的对象。
  • 按指定的对象名前缀批量删除对象。

    删除对象后无法恢复,请谨慎使用。

使用建议

对于并行文件系统目录,大数据场景下(目录层级深、目录下文件多)的删除,可能会因超时而删除失败,建议使用:

  1. hadoop 客户端(嵌套OBS客户端插件OBSA)删除目录:hadoop fs - rmr obs://{并行文件系统名}/{目录名}
  2. 给目录配置生命周期规则,通过生命周期后台删除。

命令结构

  • Windows操作系统
    • 删除单个对象
      obsutil rm obs://bucket/key [-f] [-versionId=xxx] [-fr] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
    • 批量删除对象
      obsutil rm obs://bucket/[key] -r [-j=1] [-f] [-v] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
  • macOS/Linux操作系统
    • 删除单个对象
      ./obsutil rm obs://bucket/key [-f] [-versionId=xxx] [-fr] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
    • 批量删除对象
      ./obsutil rm obs://bucket/[key] -r [-j=1] [-f] [-v] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]

运行示例

  • 以Windows操作系统为例,运行obsutil rm obs://bucket-test/key -f,删除bucket-test桶中名为key的单个对象。
    obsutil rm obs://bucket-test/key -f
    
    Delete object [key] in the bucket [bucket-test] successfully!
  • 以Windows操作系统为例,运行obsutil rm obs://bucket-test -r -f,删除bucket-test桶中所有对象。
    obsutil rm obs://bucket-test -r -f
    
    [===============================================] 100.00% 21s
    Succeed count is:   1313      Failed count is:    0
    Task id is: 95936984-f81a-441a-bba0-1fd8254d9241
  • 以Windows操作系统为例,运行obsutil rm obs://bucket-test/key -r -f,删除bucket-test桶中所有以key为前缀的对象和文件夹。
    obsutil rm obs://bucket-test/key -r -f
    
    [===============================================] 100.00% 21s
    Succeed count is:   10      Failed count is:    0
    Task id is: 79ab59ec-7e00-4f22-8c88-465faa834125

参数说明

参数

约束

描述

bucket

必选

桶名。

key

删除单个对象时必选

批量删除对象时可选

待删除的对象名,或批量删除的对象名前缀。

说明:

批量删除对象时,如果该参数为空,则表示删除桶中所有的对象。

fr

附加参数,删除单个对象时可选

删除单个对象时生成结果清单文件。

f

附加参数,可选

强制操作,不进行询问提示。

versionId

附加参数,删除单个对象时可选

待删除对象的版本号。

r

附加参数,批量删除对象时必选

按指定的对象名前缀批量删除对象。

注意:

批量删除对象时,会将与前缀匹配的所有对象删除,请谨慎使用。

j

附加参数,批量删除对象时可选

批量删除对象时的最大并发数,默认为配置文件中的defaultJobs。

说明:

工具会保证该值至少为1。

v

附加参数,批量删除对象时可选

按指定的对象名前缀批量删除多版本对象和多版本删除标记。

o

附加参数,可选

生成结果清单文件的文件夹,命令执行完成后,会在该文件夹下生成结果清单文件(可能包含成功结果和失败结果两个文件),默认为运行obsutil命令的用户目录的子文件夹.obsutil_output。

说明:
  • 结果清单文件命名规则:rm_{succeed | failed}_report_时间_TaskId.txt。
  • 单个结果清单文件默认情况下最大为30MB且最大可保留的文件个数为1024,可在配置文件中通过recordMaxLogSize和recordBackups分别配置。
  • 当涉及多文件/文件夹时,如需确认失败任务的具体错误信息,可参考结果清单文件夹下的失败结果清单文件"rm_failed_report_时间_TaskId.txt"及日志路径下的日志文件

config

附加参数,可选

运行当前命令时的自定义配置文件,可支持的配置参数请参考配置参数说明

e

附加参数,可选

指定终端节点。

i

附加参数,可选

指定用户的AK。

k

附加参数,可选

指定用户的SK。

t

附加参数,可选

指定用户的securitytoken。

响应结果

请参考上传对象的响应结果