[toc]

使用指令行工具上傳三個大小不一的檔案。
使用指令行工具檢視三個已上傳檔案的資訊,其中最大的檔案使用multipart方式上傳。
使用指令行工具下載下傳三個檔案。
使用指令行工具删除這三個檔案。
oas提供指令行工具oascmd.py,指令行工具可以給使用者一個快捷的使用工具,不需要任何代碼編寫就可以使用oas的功能,在實際使用中指令行工具更多作為一種測試工具。
安裝成功可以這樣進行驗證:
然後再驗證python sdk是否安裝正确:
沒有異常表示正确安裝。
配置過後,oascmd.py會将配置的資訊寫到一個檔案裡,是以如果有配置修改,可以直接修改這個檔案。
測試顯示我們已經連接配接上oas服務,現在可以進行各種操作了。
為了測試,建立一個vault。
可以看到,名為“oas_archive_jf”的新vault已經建立成功。
從官方文檔上可以看出,上傳分為小檔案上傳和大檔案上傳,大檔案上傳建議使用multipart上傳,這樣可以避免上傳失敗要重傳整個檔案。
注意:
注意儲存上傳過程中傳回的archive_id, 後面對archive的一些操作需要依賴archive_id,archive_id是oas中對archive的唯一辨別。
上傳檔案名為image001.jpg和matplotlib-1.4.3.tar.gz.
上傳成功的标志是指令行傳回了archive id,如果上傳完馬上檢視vault的資訊,可能是看不到變化的,因為這些資訊并不是實時的(官方文檔對此多處說明)。
oascmd.py上傳檔案大于100m時會自動原則multipart方式上傳。這裡使用multipart上傳剩下的那個大檔案。
上傳過程請注意儲存archive id和upload id.
等待上傳所有的16個part,上傳過程中檢視multipart job清單:
如果有某些part上傳失敗,可以使用upload指令上傳失敗的part.
這個時候的-p選項已經不需要了,指令會自動上傳未成功上傳的part。
與直接上傳相同,上傳結果不是實時的,是以使用oascmd.py getvaultdesc 不會有變化。
經過一段時間之後(24-48小時?),oas會更新資訊到中繼資料庫,這時就可以看到資訊了:
上傳完成之後,使用listmpart擷取已上傳清單:
使用fileetag指令計算檔案的etag:
執行part合并:
執行completemupload之後上傳才真正成功,與
上傳相同的,oas的資訊不會實時更新。
使用createjob擷取vault資訊:
creatjob之後會傳回一個job id,我們使用這個job id來下載下傳結果,但是這個job的執行是異步的,是以需要等待最多4個小時才能下載下傳。
下載下傳檔案以ubuntu-14.04.2-desktop-i386.iso為例,之前儲存的archive id為:
2ec3f10ea3de4ad3962f5fe207ae9341605ca9936dad791b6f3ae2e1c35798e2486b8a0b0ff7b52b404fceac298514472b55d196eb2a1074229c6baa48c38f2d
首先建立一個下載下傳的job:
指令傳回一個jobid,請注意儲存,job執行是異步的,需要最多等待4個小時才能完成。
job完成之後,使用jobid來下載下傳結果:
删除檔案操作之後并未真正删除(考慮到使用者誤删需要恢複),在一段時間之後才會實體删除。
web控制台和指令行工具使用起來非常直覺,但是無法應對大量檔案的情況。另外,在使用指令行工具時一定要注意儲存archive_id、upload_id等資訊,總體來說,指令行工具和控制台主要應用于檔案數目少的情況,更多應該是使用這個兩個工具進行測試。
官方文檔内容比較完整,在使用過程中有任何出錯或者不清楚的地方,可以參考官方文檔。