您可以通過-h命令查看ossutil支援的所有選項。
從ossutil 1.6.16版本開始,命令列中Binary名稱支援直接使用ossutil,您無需根據系統重新整理Binary名稱。如果您的ossutil版本低於1.6.16,則需要根據系統重新整理Binary名稱。更多資訊,請參見命令列工具ossutil命令參考。
命令格式
ossutil -h
若要查看某個命令支援哪些選項,請使用ossutil help [command]命令來查看,例如ossutil help cp。
通用選項
以下為ossutil的通用選項,這些選項可以在大部分命令中使用:
選項 | 說明 |
-c,--config-file | ossutil工具的設定檔路徑,ossutil啟動時將從設定檔讀取配置。當您需要管理多個帳號下的Bucket時,可以產生多個設定檔,並將其中一個指定為預設設定檔。當您需要管理其他賬戶下的Bucket時,請通過-c指定正確的設定檔。 |
-e,--endpoint | 指定Bucket對應的Endpoint,當您需要管理多個地區的Bucket時,可以通過此選項指定多個Endpoint。各地區Endpoint詳情請參見訪問網域名稱和資料中心。 |
-i,--access-key-id | 指定訪問OSS使用的AccessKey ID,當您需要管理多個帳號下的Bucket時,可通過此選項指定對應的AccessKey ID。 |
-k,--access-key-secret | 指定訪問OSS使用的AccessKey Secret,當您需要管理多個帳號下的Bucket時,可通過此選項指定對應的AccessKey Secret。 |
-p,--password | 指定訪問OSS使用的AccessKey Secret,輸入該選項時會提示使用者從鍵盤輸入AccessKey Secret,ossutil工具以從鍵盤讀取的AccessKey Secret為準,並忽略通過其他方式配置的AccessKey Secret。 |
--loglevel | 在當前工作目錄下輸出ossutil記錄檔ossutil.log。該選項預設為空白,表示不輸出記錄檔。 取值:
|
--proxy-host、--proxy-user、--proxy-pwd | 在代理上網環境下,需指定如下三個選項:
通過這三個選項指定Proxy 伺服器資訊後,ossutil將使用您指定的資訊並通過Proxy 伺服器訪問OSS。
|
--mode | 憑證類型。取值如下:
如果不添加此選項,預設按照原有的鑒權邏輯處理。 |
--ecs-role-name | EcsRamRole鑒權模式下的角色名稱。 |
--token-timeout | RamRoleArn鑒權模式下AssumeRole參數中指定的臨時訪問憑證Token的有效時間。單位為秒,預設值為3600。 |
--ram-role-arn | RamRoleArn鑒權模式下的RAM角色ARN。 |
--role-session-name | RamRoleArn鑒權模式下的會話名稱。 |
--read-timeout | 用戶端讀逾時的時間,單位為秒,預設值為1200。 |
--connect-timeout | 用戶端連線逾時的時間,單位為秒,預設值為120。 |
--sts-region | STS服務的接入地區,格式為 如果不添加此選項,RamRoleArn鑒權模式下指定的sts endpoint為 |
--skip-verify-cert | 不校正服務端的數位憑證。 |
--ua | 此選項用於指定HTTP Header中的User Agent值。指定後,該值將自動添加到ossutil工具設定的User Agent值的末尾。如果您希望在日誌中查看完整的User Agent值,請結合使用--loglevel debug選項。 |
其他選項
除以上通用選項外,ossutil各命令包含的其他選項如下:
選項名稱 | 描述 |
-s,--short-format | 顯示精簡格式,如果未指定該選項,預設顯示長格式。 |
--bigfile-threshold | 開啟大檔案斷點續傳的檔案大小閾值,單位為Byte,預設值為100 MByte,取值範圍為0~9223372036854775807。 |
--acl | 配置讀寫權限ACL。 |
--range | 下載檔案時,可以指定檔案內容的位元組範圍進行下載,位元組從0開始編號。
|
--all-versions | 表示Object所有版本。 |
--type | 資料校正的方式。取值如下:
|
-v,--version | 顯示ossutil的版本並退出。 |
-u,--update | 更新操作。 |
--origin | HTTP要求標頭origin欄位的值。 |
--upmode | probe命令中使用的上傳模式。取值如下:
|
--sse-algorithm | Bucket的加密方式。取值如下:
|
--include | 列舉符合指定條件的Object。例如 更多資訊,請參見include和exclude選項。 |
--exclude | 列舉不符合指定條件的Object。例如 更多資訊,請參見include和exclude選項。 |
-r,--recursive | 遞迴操作。當指定該選項時,ossutil會對Bucket下所有合格Object進行操作,否則只對URL中指定的單個Object進行操作。 |
--addr | 增加此項並填寫正確的網路地址,ossutil會通過ping操作驗證本地到目標地址的網路連通性。 預設值: |
--kms-masterkey-id | KMS密鑰託管服務中的主要金鑰ID。 |
--version-id | Object的版本ID。 |
--version-id-marker | 列舉Version ID字母排序在marker之後的Object版本。僅當Bucket開啟版本控制後可用。 |
-m,--multipart | 指定操作的對象為Bucket中未完成的Multipart事件。 |
-d,--directory | 僅返回目前的目錄下的檔案和子目錄。 |
--payer | 請求的支付方式,如果為要求者付費模式,可以將該值設定為requester。 |
--maxupspeed | 最大上傳速度,單位為KB/s,預設值為0(不受限制)。 |
--maxdownspeed | 最大下載速度,單位為KB/s,預設值為0(不受限制)。 |
--retry-times | 發生錯誤後的重試次數。預設值為10,取值範圍為1~500。 說明 發生錯誤後立即重試。 |
--download | 通過使用檔案URL下載目標檔案到本地的方式探測本地和目標Bucket之間的網路狀態。 |
-j,--jobs | 多檔案操作時的並發任務數,預設值為3,取值範圍為1~10000。 |
-a,--all-type | 指定操作的對象為Bucket中的Object和未完成的Multipart事件。 |
--disable-empty-referer | 表示不允許referer欄位為空白。 |
--method | 表示HTTP的請求類型,取值為PUT、GET、DELETE等。 |
--output-dir | 指定輸出檔案所在的目錄,輸出檔案目前包含cp命令批量拷貝檔案出錯時所產生的report檔案。 預設值:目前的目錄下的ossutil_output目錄。 |
--meta | 設定Object的meta,格式為[header:value#header:value...],如: |
--object | 用於probe命令中指定檔案名稱。 |
--end-time | Linux或Unix系統下的時間戳記。如果使用該選項,則最後更新時間晚於通過此選項指定時間的Object會被忽略。 |
--limited-num | 返回結果的最大個數。 |
-L,--language | 設定ossutil工具的語言。取值如下:
|
--delete | 刪除Bucket、Object或片段操作。 |
-b,--bucket | 僅在刪除Bucket時使用此選項。 |
--disable-crc64 | 關閉CRC64校正。預設情況下,ossutil進行資料轉送會開啟CRC64校正。 |
--upload | 通過將本地檔案上傳到目標Bucket的方式來探測本地和目標Bucket之間的網路狀態。 |
--part-size | 分區大小,單位為位元組,預設情況下ossutil根據檔案大小自行計算合適的分區大小值。如果需要效能調優時或者其他特殊需求時,可以設定該值,取值範圍為1~9223372036854775807。 |
--timeout | 簽名URL的逾時時間,單位為秒,預設值為60,取值範圍為0~9223372036854775807。 |
--checkpoint-dir | 指定斷點續傳記錄資訊所在的目錄。斷點續傳操作失敗時,ossutil會自動建立名為 |
--url | 檔案URL。 |
--marker | 列舉名稱字母排序在marker之後的Bucket、Object或者Part。 |
-f,--force | 強制操作,不進行詢問提示。 |
--snapshot-path | 指定儲存上傳、下載檔案時的快照資訊所在的目錄。在下一次上傳或下載檔案時,ossutil會讀取指定路徑下的快照資訊進行增量上傳或下載。
|
--start-time | 值為Linux或Unix系統下面的時間戳記,如果輸入這個選項,最後更新時間早於該時間的Object會被忽略。 |
--storage-class | 設定Object的儲存方式。取值如下:
|
-t,--sts-token | 訪問OSS使用的STSToken,僅在使用STS臨時授權方式訪問OSS時需要配置此項。該選項值會覆蓋設定檔中的相應設定。stsToken產生方式請參見臨時訪問憑證。 |
--parallel | 單檔案內部操作的並發任務數,取值範圍為1~10000, 預設由ossutil根據操作類型和檔案大小自行決定。 |
--partition-download | 用於分區下載。該選項取值格式為 |
--bucketname | Bucket名稱。 |
--encoding-type | 對 |
--origin | HTTP要求標頭Origin欄位的值,表示請求來源域,用來標識跨域請求。 |
--acr-method | HTTP要求標頭Access-Control-Request-Method的值,取值為GET、PUT、POST、DELETE、HEAD。 |
--acr-headers | HTTP要求標頭Access-Control-Request-Headers的值,表示在實際請求中除簡單頭部以外需要用到的Header。如果有多個Header,各個Header之間用英文的逗號(,)分隔,再加上雙引號。例如 |
--upload-id-marker | 列舉Upload ID字母排序在Marker之後的Part。 |
-h,--help | 顯示協助資訊。 |
--trafic-limit | sign命令中用於指定HTTP的訪問速度。單位為bit/s。 預設值:0,表示不限速。 取值範圍:819200~838860800,即100 KB/s~100 MB/s。 |
--local-host | cp命令中用於指定ossutil工具的本地IP地址。指定該選項後,ossutil將通過指定IP地址訪問OSS。 |
--enable-symlink-dir | 上傳連結子目錄。預設不上傳。probe命令可以探測是否存在死迴圈連結檔案或者目錄。 |
--only-current-dir | 僅上傳、下載、拷貝目前的目錄下的檔案,忽略子目錄及子目錄下的檔案。 |
--disable-dir-object | 不為上傳的目錄產生Object,但您仍可以在OSS控制台看到對應的目錄結構。當您刪除目錄內的檔案時,該目錄也會消失。 |
--probe-item | 表示probe命令的探測專案,取值如下:
|
--redundancy-type | Bucket的資料容災類型。取值如下:
|
--disable-encode-slash | 表示不對URL中的正斜線(/)進行編碼。 |
--disable-all-symlink | 上傳時忽略所有的符號連結子檔案以及符號連結子目錄。 |
--tagging | 上傳或複製檔案時設定檔案的對象標籤,格式為 |
--disable-ignore-error | 遇到錯誤,拋出異常直接終止。大量操作時不忽略錯誤。 |
--block-size | 定義輸出結果中指定Bucket或目錄下包含的Object大小,取值為KB、MB、GB或TB。不添加此選項時,預設以Byte為單位統計Object的大小。 重要 此選項僅在ossutil1.7.3及以上版本可用。 |
include和exclude選項
多選項時從左至右運用規則
一條規則中可以包含多個include(包含)和exclude(排除)條件,且每個檔案從左至右逐一運用每個規則,直至最後才能最終確定匹配的結果。例如指定生效的檔案夾中包含名為test.txt的檔案,匹配不同的規則產生的結果如下。
規則一:
--include "*test*" --exclude "*.txt"
,當規則匹配到--include "*test*"
,匹配的結果為test.txt符合條件;當規則繼續匹配到--exclude "*.txt"
時,因test.txt檔案名稱包含.txt,所以被排除。則匹配的最終結果為test.txt不符合條件。規則二:
--exclude "*.txt" --include "*test*"
,當規則匹配到--exclude "*.txt"
,匹配的結果為test.txt不符合條件;當規則繼續匹配到--include "*test*"
,因test.txt檔案名稱包含test,所以符合條件。則匹配的最終結果為test.txt符合條件。規則三:
--include "*test*" --exclude "*.txt" --include "te?t.txt"
,當規則匹配到--include "*test*"
,匹配的結果為test.txt符合條件;當規則繼續匹配到--exclude "*.txt"
時,因test.txt檔案名稱包含.txt,所以被排除;當規則最後匹配到--include "te?t.txt"
時,因test.txt符合條件,所以被包含。則匹配的最終結果為test.txt符合條件。
選項支援的格式
萬用字元星號(*):匹配所有字元。例如:*.txt表示匹配所有TXT格式的檔案。
萬用字元問號(?):匹配單個字元。例如:abc?.jpg表示匹配所有檔案名稱為abc+任意單個字元的JPG格式的檔案,如abc1.jpg。
[sequence]:匹配序列的任一字元,例如:abc[1-5].jpg表示匹配檔案名稱為abc1.jpg~abc5.jpg的檔案。
[!sequence]:匹配序列外的任一字元,例如:abc[!0-7].jpg表示匹配檔案名稱不為abc0.jpg~abc7.jpg的檔案。
選項使用限制
設定條件時不支援目錄格式,例如ossutil cp oss://examplebucket/destfolder/ localfolder/ --include dir/
,否則報錯--include or --exclude does not support format containing dir info。