1. 程式人生 > 實用技巧 >oss常用命令總結

oss常用命令總結

oss使用

最近經常和oss打交道,經常要去翻阿里的文件,索性自己總結一個吧,其實就是把阿里的文件複製下,哈哈哈

1、安裝

wget http://gosspublic.alicdn.com/ossutil/1.6.18/ossutil64
chmod 755 ossutil64

1.1 使用互動式配置生成配置檔案

./ossutil64 config
請輸入配置檔名,檔名可以帶路徑(預設為:/home/user/.ossutilconfig,回車將使用預設路徑。如果使用者設定為其它路徑,在使用命令時需要將--config-file選項設定為該路徑): 
未輸入配置檔案路徑,將使用預設配置檔案:/home/user/.ossutilconfig。 
對於下述配置,回車將跳過相關配置項的設定,配置項的具體含義,請使用"help config"命令檢視。
請輸入語言(CH/EN,預設為:CH,該配置項將在此次config命令成功結束後生效):CH 
請輸入endpoint:oss-cn-shanghai-internal.aliyuncs.com 
請輸入accessKeyID:yourAccessKeyID 
請輸入accessKeySecret:yourAccessKeySecret

2、上傳

2.1 上傳單個檔案

檔名:examplefile.txt;bucket名稱:examplebucket;bucket中的目錄:desfolder

./ossutil cp examplefile.txt oss://examplebucket/desfolder/

上傳時,若不指定上傳至OSS的檔名,則預設使用原檔名;若指定檔名,則按照指定的檔名儲存在OSS中。例如本示例可以改為:

./ossutil cp examplefile.txt oss://examplebucket/desfolder/example.txt

2.2 上傳資料夾

使用 cp命令時增加 -r選項,可以將目標資料夾上傳到OSS

./ossutil cp -r localfolder/ oss://examplebucket/desfolder/

說明 若上傳目標物件為符號連結(軟連結),且指向本地資料夾,則使用 cp命令上傳時,應當給軟連結加上正斜線(/)

./ossutil cp -r symbolic_link/ oss://examplebucket/desfolder/

上傳資料夾並跳過已有檔案

批量上傳時,若指定--update(可縮寫為-u)選項,只有當目標檔案不存在,或原始檔的最後修改時間晚於目標檔案時,ossutil才會執行上傳操作。命令如下:

./ossutil cp -r localfolder/ oss://examplebucket/desfolder/ -u

僅上傳當前目錄下的檔案,忽略子目錄

./ossutil cp localfolder/ oss://examplebucket/desfolder/ --only-current-dir -r

2.3 上傳時限速

上傳檔案時,指定 --maxupspeed選項,可設定上傳的最高速度,單位為KB/s,預設為0(不限速)。 命令如下:

上傳檔案並設定限速為1 MByte/s

./ossutil cp examplefile.txt oss://examplebucket/desfolder/ --maxupspeed 1024

上傳資料夾並設定限速為1 MByte/s

./ossutil cp -r localfolder/ oss://examplebucket/desfolder/ --maxupspeed 1024

3、下載

下載單個檔案,下載時,若未指定本地檔名,則預設使用原檔名;若指定檔名,則按照指定的檔名儲存在本地,沿用原檔名儲存檔案

./ossutil cp oss://examplebucket/desfolder/examplefile.txt localfolder/

按指定檔名儲存檔案

./ossutil cp oss://examplebucket/desfolder/examplefile.txt localfolder/example.txt

3.1 下載資料夾

./ossutil cp -r oss://examplebucket/desfolder/ localfolder/

批量下載並跳過已有檔案,批量下載時,指定--update(可縮寫為-u)選項,若本地與OSS沒有同名檔案,或本地同名檔案的最後修改時間早於OSS檔案,ossutil會下載該檔案;若本地已有同名檔案,且檔案的最後修改時間晚於OSS內檔案時,ossutil會跳過該檔案。命令如下:

./ossutil cp -r oss://examplebucket/desfolder/  localfolder/  --update                           

該選項可用於當批量下載失敗重傳或需要下載增量檔案時,跳過已經下載成功的檔案。

3.2 僅下載當前目錄下的檔案,忽略子目錄

./ossutil cp oss://examplebucket/desfolder/ localfolder/ --only-current-dir -r

3.3 批量下載符合指定條件的檔案

下載所有檔案格式不為JPG的檔案

./ossutil cp oss://examplebucket/desfolder/ localfolder/ --exclude "*.jpg" -r

下載所有檔名包含abc且不是JPG和TXT格式的檔案

./ossutil cp oss://examplebucket/desfolder/ localfolder/ --include "*abc*" --exclude "*.jpg" --exclude "*.txt" -r