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(Archive Storage),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****
關於此命令的其他通用選項的更多資訊,請參見通用選項。