本文主要介紹與碎片(part)相關的命令。
osscmd于2019年7月31日下線,阿里云不再繼續(xù)維護更新。osscmd操作命令已整合到ossutil中,推薦您使用ossutil。
init
命令說明:
init oss://bucket/object
初始化生成一個Upload ID。這個Upload ID可以配合后面的multiupload命令來使用。
使用示例:
python osscmd init oss://mybucket/myobject
listpart
命令說明:
listpart oss://bucket/object --upload_id=xxx
顯示指定object的Upload ID下已經(jīng)上傳的Parts。相關概念見OSS API文檔。必須要指定Upload ID。
使用示例:
python osscmd listpart oss://mybucket/myobject --upload_id=
75835E389EA648C0B93571B6A46023F3
listparts
命令說明:
listparts oss://bucket
顯示bucket中未完成的multipart Upload ID和object。一般在刪除bucket提示bucket非空的情況下,可以用這個命令查看是否有multipart相關的內容。
使用示例:
python osscmd listparts oss://mybucket
getallpartsize
命令說明:
getallpartsize oss://bucket
顯示bucket中還存在的Upload ID下已經(jīng)上傳的Parts的總大小。
使用示例:
python osscmd getallpartsize oss://mybucket
cancel
命令說明:
cancel oss://bucket/object --upload_id=xxx
終止Upload ID對應的Multipart Upload事件。
使用示例:
python osscmd cancel oss://mybucket/myobject --upload_id=
D9D278DB6F8845E9AFE797DD235DC576
multiupload(multi_upload,mp)
命令說明:
multiupload(multi_upload,mp) localfile oss://bucket/object --check_md5=false
--thread_num=10
將本地文件以multipart的方式上傳到OSS。
使用示例:
python osscmd multiupload /tmp/localfile.txt oss://mybucket/object
python osscmd multiup_load /tmp/localfile.txt oss://mybucket/object
python osscmd mp /tmp/localfile.txt oss://mybucket/object
命令說明:
multiupload(multi_upload,mp) localfile oss://bucket/object --upload_id=xxx --thread_num=10
--max_part_num=1000 --check_md5=false
將本地文件以multipart的方式上傳到OSS。本地文件劃分的塊數(shù)由max_part_num來指定。這個命令在實現(xiàn)的時候,會先去判斷Upload ID對應的Parts的ETag是否和本地文件的MD5值是否相等,相等則跳過上傳。所以在使用之前生成一個Upload ID,作為參數(shù)傳進來。即使上傳沒有成功,重復執(zhí)行相同的multiupload命令可以達到一個斷點續(xù)傳的效果。--check_md5=false
表示上傳文件時,不會做攜帶Content-MD5請求頭校驗。true則會做校驗。
使用示例:
python osscmd multiupload /tmp/localfile.txt oss://mybucket/object --upload_id= D9D278DB6F8845E9AFE797DD235DC576
python osscmd multiup_load /tmp/localfile.txt oss://mybucket/object --thread_num=5
python osscmd mp /tmp/localfile.txt oss://mybucket/object --max_part_num=100
copylargefile
命令說明:
copylargefile oss://source_bucket/source_object oss://target_bucket/target_object
--part_size=10*1024*1024 --upload_id=xxx
對于超過1G的大文件進行復制時,采用multipart的方式將object復制到指定位置(源bucket必須與目標bucket處于同一region)。其中upload_id為可選參數(shù),當需要對某一次multipart copy事件進行續(xù)傳的時候,可以傳入該事件的upload_id。part_size用來設定分塊大小,分塊最小需要大于100KB,最多支持10000塊分塊。如果part_size設定值導致與OSS限制沖突,程序會幫你自動調節(jié)分塊大小。
使用示例:
python osscmd copylargefile oss://source_bucket/source_object
oss://target_bucket/target_object --part_size=10*1024*1024
uploadpartfromfile (upff)
命令說明:
uploadpartfromfile (upff) localfile oss://bucket/object --upload_id=xxx
--part_number=xxx
主要用于測試,不推薦使用。
uploadpartfromstring(upfs)
命令說明:
uploadpartfromstring(upfs) oss://bucket/object --upload_id=xxx --part_number=xxx
--data=xxx
主要用于測試,不推薦使用。