當您需要對帳號下的OSS資源進行查詢並管理時,例如查詢並刪除佔用空間比較大的檔案,您可以通過ls命令列舉當前帳號下的儲存空間(Bucket)、對象(Object)和片段(Part)資訊。
注意事項
要列舉Bucket,您必須具有
oss:ListBuckets
許可權;要列舉Object,您必須具有oss:ListObjects
許可權;要列舉Object的所有版本,您必須具有oss:ListObjectVersions
許可權;要列舉所有Part,您必須具有oss:ListParts
和oss:ListMultipartUploads
許可權。具體操作,請參見為RAM使用者授權自訂的權限原則。從ossutil 1.6.16版本開始,命令列中Binary名稱支援直接使用ossutil,您無需根據系統重新整理Binary名稱。如果您的ossutil版本低於1.6.16,則需要根據系統重新整理Binary名稱。更多資訊,請參見命令列工具ossutil命令參考。
列舉Bucket
命令格式
ossutil ls [-s] [--limited-num] [--marker]
參數說明如下:
選項
說明
-s
列舉結果僅返回Bucket的名稱。
--limited-num
設定返回結果的最大個數。您可以使用此項結合marker對返回結果進行分頁展示。
--marker
列舉名稱字母序排在marker之後的Bucket。
使用樣本
列舉所有Bucket
ossutil ls
或
ossutil ls oss://
以下輸出結果表明已成功列舉當前帳號下所有Bucket,包括Bucket名稱、建立時間、所在地區、儲存類型、數量等資訊。
2016-10-21 16:18:37 +0800 CST oss-cn-hangzhou Archive oss://examplebucketA 2016-12-01 15:06:21 +0800 CST oss-cn-hangzhou Standard oss://examplebucketB 2016-07-20 10:36:24 +0800 CST oss-cn-hangzhou IA oss://examplebucketC 2016-10-21 17:31:27 +0800 CST oss-cn-hangzhou Archive oss://examplebucketD Bucket Number is:4 0.252174(s) elapsed
以精簡模式列舉所有Bucket
ossutil ls -s
以下輸出結果表明已成功列舉當前帳號下所有Bucket,僅包含Bucket名稱以及Bucket數量。
oss://examplebucketA oss://examplebucketB oss://examplebucketC oss://examplebucketD Bucket Number is:4 0.235104(s) elapsed
列舉字母序排在指定marker為examplebucketA之後的Bucket
ossutil ls oss:// --limited-num=2 -s --marker examplebucketA
以下輸出結果表明已成功列舉examplebucketA之後的2個Bucket。
2016-12-01 15:06:21 +0800 CST oss-cn-hangzhou Standard oss://examplebucketB 2016-07-20 10:36:24 +0800 CST oss-cn-hangzhou IA oss://examplebucketC Bucket Number is:2 0.132174(s) elapsed
列舉Object
命令格式
ossutil ls oss://bucketname[/prefix] [-s] [-d] [--limited-num] [--marker] [--include] [--exclude] [--version-id-marker] [--all-versions]
參數說明如下:
選項
說明
bucketname
目標Bucket名稱。
prefix
目標Object首碼。當您列舉目標Bucket中指定首碼的Object時添加此項。
-s
列舉結果僅返回Object的名稱。
-d
僅列舉Object和子目錄,忽略子目錄下的Object。
--limited-num
設定返回結果的最大個數。您可以使用此項結合--marker,對返回結果進行分頁展示。
--marker
列舉名稱字母排序在marker之後的Object。
--include
列舉符合指定條件的Object。
更多資訊,請參見include和exclude選項。
--exclude
列舉不符合指定條件的Object。
更多資訊,請參見include和exclude選項。
--version-id-marker
列舉Version ID字母排序在marker之後的Object版本。僅當Bucket開啟版本控制後可用。
--all-versions
列舉Object的所有版本,僅當Bucket開啟版本控制後可用。
使用樣本
列舉examplebucket內所有Object
ossutil ls oss://examplebucket
以下輸出結果表明已成功列舉examplebucket內所有Object的資訊,包括檔案最後更新時間(LastModifiedTime)、以位元組為單位統計的檔案大小(Size)、ETag值以及檔案名稱(ObjectName)。
其中,ETag值用於標識一個Object的內容。對於通過PutObject請求建立的Object,ETag值是其內容的MD5值;對於通過其他方式建立的Object,ETag值是基於一定計算規則產生的唯一值,但不是其內容的MD5值。
LastModifiedTime Size(B) StorageClass ETag ObjectName 2020-12-01 15:06:37 +0800 CST 114 Standard 61DE142E5AFF9A6748707D4A77BFBCFB oss://examplebucket/example.txt 2020-12-01 15:06:42 +0800 CST 363812 Standard E7581E5D2EBC56ECCB6FB6050B4C6545 oss://examplebucket/examplefolder/photo.jpg 2020-12-01 15:06:45 +0800 CST 57374182 Standard BE97B7AD7A2C1277B11221E5C9537544 oss://examplebucket/video.mp4 Object Number is:3 0.007379(s) elapsed
列舉examplebucket內首碼為example的Object
ossutil ls oss://examplebucket/example
以下輸出結果表明已成功列舉examplebucket內所有首碼為example的Object。
LastModifiedTime Size(B) StorageClass ETag ObjectName 2020-12-01 15:06:37 +0800 CST 114 Standard 61DE142E5AFF9A6748707D4A77BFBCFB oss://examplebucket/example.txt 2020-12-01 15:06:42 +0800 CST 363812 Standard E7581E5D2EBC56ECCB6FB6050B4C6545 oss://examplebucket/examplefolder/photo.jpg Object Number is:2 0.007379(s) elapsed
列舉examplebucket內所有尾碼名為.mp4的檔案
ossutil ls oss://examplebucket --include *.mp4
以下輸出結果表明已成功列舉examplebucket內所有尾碼名為.mp4的檔案。
LastModifiedTime Size(B) StorageClass ETag ObjectName 2020-12-01 15:06:45 +0800 CST 57374182 Standard BE97B7AD7A2C1277B11221E5C9537544 oss://examplebucket/video.mp4 Object Number is:1 0.007379(s) elapsed
僅列舉examplebucket根目錄下Object和子目錄
ossutil ls oss://examplebucket -d
以下輸出結果表明已成功列舉examplebucket根目錄下Object和子目錄。
oss://examplebucket/example.txt oss://examplebucket/examplefolder/ oss://examplebucket/video.mp4 Object and Directory Number is: 3 0.278489(s) elapsed
列舉examplebucket內所有Object的所有版本
ossutil ls oss://examplebucket --all-versions
以下輸出結果表明已成功列舉examplebucket內所有Object的所有版本。
LastModifiedTime Size(B) StorageClass ETag VERSIONID IS-LATEST DELETE-MARKER ObjectName 2020-12-01 15:06:37 +0800 CST 114 Standard 61DE142E5AFF9A6748707D4A77BFBCFB CAEQARiBgICUsOuR2hYiIDI3NWVjNmEyYmM0NTRkZWNiMTkxY2VjMDMwZjFlMDA3 true false oss://examplebucket/example.txt 2020-06-11 11:03:37 +0800 CST 363812 Standard E7581E5D2EBC56ECCB6FB6050B4C6545 CAEQARiBgIDZtvuR2hYiIDNhYjRkN2M5NTA5OTRlN2Q4YTYzODQwMzQ4NDYwZDdm true false oss://examplebucket/examplefolder/photo.jpg 2021-01-26 13:27:08 +0800 CST 0 CAEQLxiBgIDd7NH0uRciIDA3Yzg0MTZjOWNlYzQ4ODZhMzVkZWE0MmE2NzBlYTYx true true oss://examplebucket/image.png 2020-12-01 15:06:45 +0800 CST 57374182 Standard BE97B7AD7A2C1277B11221E5C9537544 CAEQLBiBgMDZiprwthciIDY2NGM0NTNmZDE3ODRmZmVhZGM4YTUwZGQyNGU3ZjQ3 true false oss://examplebucket/video.mp4 2016-06-11 10:53:46 +0800 CST 118076 Standard FFDB300F053AAF06F4C4C58A4869C427 CAEQARiBgID8rumR2hYiIGUyOTAyZGY2MzU5MjQ5ZjlhYzQzZjNlYTAyZDE3MDRk false false oss://examplebucket/example.txt 2016-06-11 11:02:05 +0800 CST 345374 Standard 078A9852BCF81DC4811E6EDCBFD121BE CAEQARiBgICNz_iR2hYiIGJjZTBjNDQxYWRhNTQ2ZTNiNmMzYzQ1YzMzMDA5ZjUw false false oss://examplebucket/examplefolder/photo.jpg Object Number is: 6 0.692000(s) elapsed
列舉examplebucket根目錄下example.txt的所有版本
ossutil ls oss://examplebucket/example.txt --all-versions
以下輸出結果表明已成功列舉example.txt的所有版本。
LastModifiedTime Size(B) StorageClass ETag VERSIONID IS-LATEST DELETE-MARKER ObjectName 2020-12-01 15:06:37 +0800 CST 114 Standard 61DE142E5AFF9A6748707D4A77BFBCFB CAEQARiBgICUsOuR2hYiIDI3NWVjNmEyYmM0NTRkZWNiMTkxY2VjMDMwZjFlMDA3 true false oss://examplebucket/example.txt 2016-06-11 10:53:46 +0800 CST 114 Standard 61DE142E5AFF9A6748707D4A77BFBCFB CAEQARiBgID8rumR2hYiIGUyOTAyZGY2MzU5MjQ5ZjlhYzQzZjNlYTAyZDE3MDRk false false oss://examplebucket/example.txt Object Number is: 2 0.361000(s) elapsed
列舉Part
命令格式
ossutil ls oss://bucketname[/prefix] [-s] [-d] [-m] [-a] [--limited-num] [--upload-id-marker]
參數說明如下:
選項
說明
bucketname
目標Bucket名稱。
當您需要列舉指定Bucket中的Object時添加此項。
prefix
列舉指定首碼下的Part。
-s
列舉結果僅返回UploadID和Object名稱。
-d
列舉Object和子目錄,忽略子目錄下的Object。
-m
列舉Part。
-a
列舉Object和Part。
--limited-num
設定返回結果的最大個數。您可以使用此項結合--upload-id-marker對返回結果進行分頁展示。
--upload-id-marker
列舉Upload ID字母排序在marker之後的Part。
使用樣本
列舉examplebucket內所有Part
ossutil ls oss://examplebucket -m
以下輸出結果表明已成功列舉examplebucket內所有Part。
InitiatedTime UploadID ObjectName 2017-01-13 03:45:26 +0000 CST 15754AF7980C4DFB8193F190837520BB oss://examplebucket/test.mp4 2017-01-13 03:45:13 +0000 CST 2A1F9B4A95E341BD9285CC42BB950EE0 oss://examplebucket/test.mp4 2017-01-13 03:45:01 +0000 CST 3998971ACAF94AD9AC48EAC1988BE863 oss://examplebucket/test.mp4 2017-01-20 11:16:21 +0800 CST A20157A7B2FEC4670626DAE0F4C0073C oss://examplebucket/object.exe UploadId Number is:4 0.191289(s) elapsed
列舉examplebucket內所有Object和Part
ossutil ls oss://examplebucket -a
以下輸出結果表明已成功列舉examplebucket內所有Object和Part。
LastModifiedTime Size(B) StorageClass ETag ObjectName 2020-12-01 15:06:37 +0800 CST 114 Standard 61DE142E5AFF9A6748707D4A77BFBCFB oss://examplebucket/example.txt 2020-12-01 15:06:42 +0800 CST 363812 Standard E7581E5D2EBC56ECCB6FB6050B4C6545 oss://examplebucket/examplefolder/photo.jpg 2020-12-01 15:06:45 +0800 CST 57374182 Standard BE97B7AD7A2C1277B11221E5C9537544 oss://examplebucket/video.mp4 Object Number is:3 InitiatedTime UploadID ObjectName 2017-01-13 03:45:26 +0000 CST 15754AF7980C4DFB8193F190837520BB oss://examplebucket/test.mp4 2017-01-13 03:45:13 +0000 CST 2A1F9B4A95E341BD9285CC42BB950EE0 oss://examplebucket/test.mp4 2017-01-13 03:45:01 +0000 CST 3998971ACAF94AD9AC48EAC1988BE863 oss://examplebucket/test.mp4 2017-01-20 11:16:21 +0800 CST A20157A7B2FEC4670626DAE0F4C0073C oss://examplebucket/object.exe UploadId Number is:4 0.791289(s) elapsed
通用選項
當您需要通過命令列工具ossutil切換至另一個地區的Bucket時,可以通過-e選項指定該Bucket所屬的Endpoint。當您需要通過命令列工具ossutil切換至另一個阿里雲帳號下的Bucket時,可以通過-i選項指定該帳號的AccessKey ID,並通過-k選項指定該帳號的AccessKey Secret。
例如您需要列舉另一個阿里雲帳號下,華東1(杭州)名為test的Bucket內所有檔案,命令如下:
ossutil ls oss://test -e oss-cn-hangzhou.aliyuncs.com -i LTAI4Fw2NbDUCV8zYUzA**** -k 67DLVBkH7EamOjy2W5RVAHUY9H****
關於此命令的其他通用選項的更多資訊,請參見通用選項。