全部產品
Search
文件中心

Object Storage Service:查看選項

更新時間:Jul 31, 2024

您可以通過-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。該選項預設為空白,表示不輸出記錄檔。

取值:

  • info:用於列印ossutil操作記錄。

    ossutil [command] --loglevel=info
  • debug:可以輸出HTTP流水日誌以及原始簽名串資訊,方便定位問題。

    ossutil [command] --loglevel=debug

--proxy-host--proxy-user--proxy-pwd

在代理上網環境下,需指定如下三個選項:

  • --proxy-host:網路代理程式伺服器的URL地址,支援HTTPHTTPS以及SOCKS5

  • --proxy-user:網路代理程式伺服器的使用者名稱,預設為空白。

  • --proxy-pwd:網路代理程式伺服器的密碼,預設為空白。

通過這三個選項指定Proxy 伺服器資訊後,ossutil將使用您指定的資訊並通過Proxy 伺服器訪問OSS。

ossutil ls oss://bucket1 --proxy-host http://47.88.**.**:3128 --proxy-user test --proxy-pwd test

--mode

憑證類型。取值如下:

  • AK:使用AccessKey ID和AccessKey Secret的方式訪問。

  • StsToken:使用STS Token的方式訪問。

  • RamRoleArn:使用RAM使用者的AssumeRole的方式訪問。

  • EcsRamRole:在ECS執行個體上通過EcsRamRole實現免密驗證。

如果不添加此選項,預設按照原有的鑒權邏輯處理。

--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服務的接入地區,格式為cn-hangzhou。STS服務支援的所有接入地區的詳情,請參見接入地址

如果不添加此選項,RamRoleArn鑒權模式下指定的sts endpoint為sts.aliyuncs.com

--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開始編號。

  • 可以指定一個區間,例如3-9表示從第3個位元組到第9個位元組(包含第3和第9位元組)。

  • 可以指定從什麼欄位開始,例如3-表示從第3個位元組開始到檔案結尾(包含第3個位元組)。

  • 可以指定從什麼欄位結束,例如-9表示從0位元組到第9個位元組(包含第9個位元組)。

--all-versions

表示Object所有版本。

--type

資料校正的方式。取值如下:

  • crc64(預設值):資料CRC64校正。

  • md5:資料MD5校正。

-v,--version

顯示ossutil的版本並退出。

-u,--update

更新操作。

--origin

HTTP要求標頭origin欄位的值。

--upmode

probe命令中使用的上傳模式。取值如下:

  • normal(預設值):簡單上傳。

  • append:追加上傳。

  • multipart:分區上傳。

--sse-algorithm

Bucket的加密方式。取值如下:

  • KMS:使用KMS託管密鑰進行加解密,即SSE-KMS。

  • AES256:使用OSS完全託管密鑰進行加解密,即SSE-OSS。

--include

列舉符合指定條件的Object。例如*.jpg表示列舉所有格式為JPG的檔案。

更多資訊,請參見include和exclude選項

--exclude

列舉不符合指定條件的Object。例如*.txt表示列舉所有格式不為TXT的檔案。

更多資訊,請參見include和exclude選項

-r,--recursive

遞迴操作。當指定該選項時,ossutil會對Bucket下所有合格Object進行操作,否則只對URL中指定的單個Object進行操作。

--addr

增加此項並填寫正確的網路地址,ossutil會通過ping操作驗證本地到目標地址的網路連通性。

預設值:www.aliyun.com

--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...],如:Cache-Control:no-cache#Content-Encoding:gzip

--object

用於probe命令中指定檔案名稱。

--end-time

Linux或Unix系統下的時間戳記。如果使用該選項,則最後更新時間晚於通過此選項指定時間的Object會被忽略。

--limited-num

返回結果的最大個數。

-L,--language

設定ossutil工具的語言。取值如下:

  • CH(預設值):中文。設定為CH時,請確保您的系統編碼方式為UTF-8。

  • EN:英文。

--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會自動建立名為.ossutil_checkpoint的目錄,並在該目錄下記錄checkpoint資訊,斷點續傳成功後會刪除該目錄。如果通過該選項指定了目錄,請確保指定的目錄可以被刪除。

--url

檔案URL。

--marker

列舉名稱字母排序在marker之後的Bucket、Object或者Part。

-f,--force

強制操作,不進行詢問提示。

--snapshot-path

指定儲存上傳、下載檔案時的快照資訊所在的目錄。在下一次上傳或下載檔案時,ossutil會讀取指定路徑下的快照資訊進行增量上傳或下載。

  • --snapshot-path選項用於在某些情境下加速增量上傳、下載多個適用於檔案(拷貝操作不支援該選項)。例如檔案數量較多且兩次上傳期間沒有其他使用者更改OSS上對應的Object。

  • --snapshot-path選項通過在本地記錄成功上傳、下載的檔案的本地lastModifiedTime,從而在下次上傳、下載時通過比較lastModifiedTime來決定是否跳過相同檔案,所以在使用該選項時,請確保兩次上傳、下載期間沒有其他使用者更改了OSS上的對應Object。當不滿足該情境時,如果想要增量上傳、下載批量檔案,請使用--update選項。

  • ossutil不會主動刪除snapshot-path下的快照資訊,為了避免快照資訊過多,當您確定快照資訊無用時,請自行清理snapshot-path。

  • 由於讀寫snapshot資訊需要額外開銷,當要批量上傳、下載的檔案數比較少或網路狀況比較好或有其他使用者操作相同Object時,並不建議使用該選項。可以使用--update選項來增量上傳/下載。

  • --update選項和--snapshot-path選項可以同時使用,ossutil會優先根據snapshot-path資訊判斷是否跳過此檔案,如果不滿足跳過條件,再根據--update判斷是否跳過此檔案。

--start-time

值為Linux或Unix系統下面的時間戳記,如果輸入這個選項,最後更新時間早於該時間的Object會被忽略。

--storage-class

設定Object的儲存方式。取值如下:

  • Standard(預設值):適用於頻繁的資料訪問。

  • IA:適用於較低訪問頻率(平均每月訪問頻率1到2次)的業務情境,有最低儲存時間(30天)和最小計量單位(64 KB)要求。支援資料即時訪問,訪問資料時會產生資料取回費用。

  • Archive:適用於資料長期儲存的業務情境,有最低儲存時間(60天)和最小計量單位(64 KB)要求。資料需解凍(約1分鐘)後訪問,解凍會產生資料取回費用。

  • ColdArchive:適用於需要超長時間存放的極冷資料,有最低儲存時間(180天)和最小計量單位(64 KB)要求。資料需解凍後訪問,解凍時間根據資料大小和選擇的解凍模式決定,解凍會產生資料取回費用。

-t,--sts-token

訪問OSS使用的STSToken,僅在使用STS臨時授權方式訪問OSS時需要配置此項。該選項值會覆蓋設定檔中的相應設定。stsToken產生方式請參見臨時訪問憑證

--parallel

單檔案內部操作的並發任務數,取值範圍為1~10000, 預設由ossutil根據操作類型和檔案大小自行決定。

--partition-download

用於分區下載。該選項取值格式為分區編號:總分區數。例如1:5,表示當前ossutil下載分區1,總共有5個分區。分區號從1開始編號,Object的分區規則由工具內部演算法決定。通過該選項將待下載的Object分成多個分區,並由多個ossutil命令並行下載,各個ossutil命令下載各自的分區。

--bucketname

Bucket名稱。

--encoding-type

oss://bucket_name後面的key進行編碼,取值為url。如果不指定該選項,則表示key未經過編碼。

--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之間用英文的逗號(,)分隔,再加上雙引號。例如--acr-headers "header1,header2,header3"

--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命令的探測專案,取值如下:

  • upload-speed:探測上傳頻寬。

  • download-speed:探測下載頻寬。

  • cycle-symlink:探測本地檔案目錄中是否存在死迴圈連結檔案或者目錄。

--redundancy-type

Bucket的資料容災類型。取值如下:

  • LRS(預設值):本地冗餘LRS將您的資料冗餘儲存在同一個可用性區域的不同存放裝置上,可支援兩個存放裝置並發損壞時,仍鑑效組資料不丟失,可正常訪問。

  • ZRS:同城冗餘ZRS採用多可用性區域(AZ)內的資料冗餘儲存機制,將使用者的資料冗餘儲存在同一地區(Region)的多個可用性區域。當某個可用性區域不可用時,仍然能夠保障資料的正常訪問。

--disable-encode-slash

表示不對URL中的正斜線(/)進行編碼。

--disable-all-symlink

上傳時忽略所有的符號連結子檔案以及符號連結子目錄。

--tagging

上傳或複製檔案時設定檔案的對象標籤,格式為"abc=1&bcd=2&……"

--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