du命令用于获取指定存储空间(Bucket)、文件目录下包含的所有Object的大小。
注意事项
要获取当前版本所有Object的大小,您需要具有
oss:ListObjects
、oss:ListParts
和oss:ListMultipartUploads
权限;要获取所有版本Object大小,您需要具有oss:ListObjectVersions
、oss:ListParts
和oss:ListMultipartUploads
权限。具体操作,请参见为RAM用户授权自定义的权限策略。从ossutil 1.6.16版本开始,命令行中Binary名称支持直接使用ossutil,您无需根据系统刷新Binary名称。如果您的ossutil版本低于1.6.16,则需要根据系统刷新Binary名称。更多信息,请参见命令行工具ossutil命令参考。
命令格式
ossutil du oss://bucketname[/prefix] [--payer requester] [--all-versions][--block-size <value>]
参数及选项说明如下:
配置项 | 说明 |
bucketname | 目标Bucket名称。 |
prefix | Bucket下的某个文件目录或指定前缀。 |
--payer | 请求的支付方式。如果希望访问指定路径下的资源产生的流量、请求次数等费用由请求者支付,请将此选项的值设置为requester。 |
--all-versions | 获取所有版本Object的大小。不添加此选项时,默认查询当前版本Object的大小。 |
--block-size | 定义输出结果中指定Bucket或目录下包含的Object大小,取值为KB、MB、GB或TB。不添加此选项时,默认以Byte为单位统计Object的大小。 重要 此选项仅在ossutil1.7.3及以上版本可用。 |
查询指定Bucket下所有版本Object的大小
以下命令用于查询examplebucket内所有版本Object的大小:
ossutil du oss://examplebucket --all-versions
以下输出结果表明examplebucket内共有13个Object,其中12个Object的存储类型为Standard(标准存储),1个Object为Archive(归档存储),Object总大小为132116024 字节。
storage class object count sum size(byte)
----------------------------------------------------------
Standard 12 132115210
Archive 1 814
----------------------------------------------------------
total object count: 13 total object sum size: 132116024
total part count: 0 total part sum size: 0
total du size(byte):132116024
0.382978(s) elapsed
查询指定目录下所有当前版本Object的大小
以下命令用于查询examplebucket内指定目录dir下的当前版本Object大小,Object大小以GB为单位进行统计:
ossutil du oss://examplebucket/dir/ --block-size GB
以下输出结果表明存储空间examplebucket内指定目录dir下共有5个Object,其存储类型均为Standard,文件总大小为0.0002 GB。
storage class object count sum size(byte)
----------------------------------------------------------
Standard 5 232277
----------------------------------------------------------
total object count: 5 total object sum size: 232277
total part count: 0 total part sum size: 0
total du size(GB):0.0002
0.078757(s) elapsed
查询与前缀匹配的所有版本Object的大小
以下命令用于查询目标存储空间examplebucket下与前缀test匹配的所有版本Object的大小,Object大小以KB为单位进行统计:
ossutil du oss://examplebucket/test --all-versions --block-size KB
以下输出结果表明examplebucket下与前缀test匹配的Object共有4个,其存储类型均为Standard,大小为448.1455 KB。
storage class object count sum size(byte)
----------------------------------------------------------
Standard 4 439425
----------------------------------------------------------
total object count: 4 total object sum size: 439425
total part count: 0 total part sum size: 0
total du size(KB):448.1455
0.126340(s) elapsed
通用选项
当您需要通过命令行工具ossutil切换至另一个地域的Bucket时,可以通过-e选项指定该Bucket所属的Endpoint。当您需要通过命令行工具ossutil切换至另一个阿里云账号下的Bucket时,可以通过-i选项指定该账号的AccessKey ID,并通过-k选项指定该账号的AccessKey Secret。
例如您需要获取另一个阿里云账号下,华东2(上海)地域下名为testbucket的存储空间下所有版本Object的大小,命令如下:
ossutil du oss://testbucket --all-versions -e oss-cn-shanghai.aliyuncs.com -i LTAI4Fw2NbDUCV8zYUzA**** -k 67DLVBkH7EamOjy2W5RVAHUY9H****
关于此命令的其他通用选项的更多信息,请参见通用选项。