阿里雲CLI整合了Object Storage Service (OSS)的命令列工具ossutil 1.0。您可以通過使用阿里雲CLI統一的命令格式,快速管理您在OSS中的資料。
前置概念
阿里雲CLI是基於阿里雲OpenAPI建立的管理工具,您可在Cloud Shell使用阿里雲CLI快速管理阿里雲資源。更多資訊,請參見什麼是阿里雲 CLI。
ossutil是阿里雲官方提供的OSS命令列管理工具,您可以使用ossutil來管理您OSS中的如下資料:
管理儲存空間(Bucket)。例如:建立、列舉或刪除Bucket等。
管理對象/檔案(Object)。例如:上傳、下載、列舉、拷貝或刪除Object等。
管理片段(Part)。例如:列舉或刪除Part等。
更多資訊,請參見命令列工具ossutil 1.0。
操作步驟
步驟一:啟動雲命令列
在啟動雲命令列之前,您需要使用已授予許可權的可用RAM身份登入阿里雲首頁。雲命令列將使用當前登入態為您自動設定身份憑證,無需手動操作。為避免自動設定憑證功能失效,建議您在操作時避免對初始設定檔default進行修改或刪除。
您可以通過以下方式啟動雲命令列:
-
在控制台中運行
單擊控制台首頁頂部導覽列中的雲命令列按鈕,啟動雲命令列。
-
獨立運行
在瀏覽器中輸入https://shell-sg.alibabacloud.com,開啟雲命令列操作介面。
-
雲命令列啟動時會為您建立一台虛擬機器,這個過程將消耗一些時間,最長不超過30秒。
-
您可以根據實際需要開啟多個雲命令列視窗,最多可同時開啟5個雲命令列視窗。多個雲命令列視窗會串連到同一台虛擬機器,虛擬機器數量不會因為您開啟新的命令列視窗而增加。
-
更多資訊,請參見什麼是雲命令列。
步驟二:使用阿里雲CLI管理OSS中的資料。
命令格式
雲命令列中已預裝阿里雲CLI並內建授權,您可以使用阿里雲CLI來管理您的OSS資料。通用命令格式如下所示
aliyun oss [command] [options and parameters]命令樣本
執行如下命令,建立一個命名為
vmeixme的儲存空間(Bucket),並設定Bucket的儲存類型為Standard。aliyun oss mb oss://vmeixme --storage-class Standard執行如下命令,在Bucket內建立一個命名為
horse的檔案目錄。aliyun oss mkdir oss://vmeixme/horse/執行如下命令,列舉您帳號下的OSS資源,包括儲存空間(Bucket)、對象(Object)和片段(Part)資訊,並設定返回結果的最大個數為20。
aliyun oss ls --limited-num 20
協助資訊
在阿里雲CLI中,您可以通過在命令中使用--help選項擷取協助資訊。
執行
aliyun oss --help命令,您可以查看並瞭解使用阿里雲CLI管理OSS資料的所有操作命令。aliyun oss --help執行如下命令,可擷取某一項操作的詳細資料及可用選項。
aliyun oss [command] --help
命令樣本
執行如下命令,可以擷取建立檔案目錄操作的詳細資料及可用選項。
aliyun oss mkdir --help預期輸出如下資訊。
shell@Alicloud:~$ aliyun oss mkdir --help 建立一個目錄,在oss中目錄名字有尾碼字元'/' Usage: aliyun oss ossutil mkdir oss://bucket/dir_name Flags: --mode 使用 `--mode {AK|StsToken|RamRoleArn|EcsRamRole|RsaKeyPair|RamRoleArnWithRoleName}` 指定認證方式 --profile,-p 使用 `--profile <profileName>` 指定操作的配置集 --language 使用 `--language [en|zh]` 來指定語言 --region 使用 `--region <regionId>` 來指定訪問大區 --config-path 使用 `--config-path` 指定設定檔路徑 --access-key-id 使用 `--access-key-id <AccessKeyId>` 指定 AccessKeyId --access-key-secret 使用 `--access-key-secret <AccessKeySecret>` 指定 AccessKeySecret --sts-token 使用 `--sts-token <StsToken>` 指定 StsToken --sts-region 使用 `--sts-region <StsRegion>` 指定 StsRegion --ram-role-name 使用 `--ram-role-name <RamRoleName>` 指定 RamRoleName --ram-role-arn 使用 `--ram-role-arn <RamRoleArn>` 指定 RamRoleArn --role-session-name 使用 `--role-session-name <RoleSessionName>` 指定 RoleSessionName --private-key 使用 `--private-key <PrivateKey>` 指定 RSA私密金鑰 --key-pair-name 使用 `--key-pair-name <KeyPairName>` 指定 KeyPairName --read-timeout 使用 `--read-timeout <seconds>` 指定 I/o逾時時間(秒) --connect-timeout 使用 `--connect-timeout <seconds>` 指定請求連線逾時時間(秒) --retry-count 使用 `--retry-count <count>` 指定重試次數 --skip-secure-verify 使用 `--skip-secure-verify` 跳過 https的認證校正 [不推薦使用] --expired-seconds 使用 `--expired-seconds <seconds>` 指定憑證到期時間 --process-command 使用 `--process-command <ProcessCommand>` 指定外部程式運行命令 --oidc-provider-arn 使用 `--oidc-provider-arn <OIDCProviderARN>` 來指定 OIDC 提供者 ARN --oidc-token-file 使用 `--oidc-token-file <OIDCTokenFile>` 來指定 OIDC Token 檔案路徑 --config-file,-c ossutil工具的設定檔路徑, ossutil啟動時從設定檔讀取配置, 在config命令中, ossutil將配置寫入該檔案。 --endpoint,-e ossutil工具的基本 endpoint配置(該選項值會覆蓋設定檔中的相應設定),注意其必須為一個次層網域。 --proxy-host 網路代理程式伺服器的url地址,支援http/https/socks5,比如 https://120.79.128.211:3128
常用操作命令
您可以通過如下列表瞭解阿里雲CLI支援的OSS操作命令。
命令 | 說明 |
appendfromfile(追加上傳) | 在已上傳的追加類型檔案(Appendable Object)末尾直接追加內容。 |
bucket-encryption(伺服器端加密) | 添加、修改、查詢和刪除Bucket的加密配置。 |
bucket-policy(授權策略) | 添加、修改、查詢、刪除Bucket授權策略(Bucket Policy) |
bucket-tagging(儲存空間標籤) | 添加、修改、查詢、刪除Bucket的標籤配置。 |
cat(輸出檔案內容) | 將儲存空間(Bucket)內檔案(Object)的內容輸出到螢幕。 |
cors(跨域資源共用) | 添加、修改、查詢、刪除儲存空間(Bucket)的CORS配置。 |
cors-options(檢測跨域請求) | 通過向OSS發送HTTP OPTIONS請求的方式,用來檢測指定的跨域訪問請求是否被允許。 |
cp(上傳、下載和拷貝檔案) | 對儲存空間(Bucket)中的檔案進行上傳、下載和拷貝。 |
create-symlink(建立軟連結) | 建立軟連結,通過軟連結檔案快速開啟源檔案。 |
du(擷取大小) | 擷取指定儲存空間(Bucket)、檔案目錄下包含的所有Object的大小。 |
getallpartsize(擷取片段大小) | 擷取Bucket內所有未完成的Multipart任務產生的片段(Part)資訊。 |
hash(計算CRC64或MD5) | 計算本地檔案的MD5或CRC64。 |
help(擷取協助資訊) | 擷取命令的協助資訊。 |
lifecycle(生命週期) | 添加、查詢、列舉或刪除生命週期規則。 |
listpart(列舉片段) | 列舉未完成分區上傳的檔案(Object)包含的片段(Part)資訊。 |
logging(日誌轉存) | 開啟、查詢、關閉Bucket的日誌轉存配置。 |
ls(列舉帳號層級下的資源) | 列舉當前帳號下的儲存空間(Bucket)、對象(Object)和片段(Part)資訊。 |
mb(建立儲存空間) | 建立Bucket。 |
mkdir(建立目錄) | 建立目錄。 |
object-tagging(對象標籤) | 添加、修改、擷取和刪除對象標籤。 |
probe(探測狀態) | 排查本地與OSS之間的網路狀態、上傳下載頻寬、本地符號連結(軟連結)狀態等。 |
read-symlink(讀取軟連結) | 讀取軟連結檔案的描述資訊,包括軟連結檔案的ETag值、最後更新時間等。 |
referer(防盜鏈) | 添加、修改、查詢、刪除Bucket的防盜鏈配置。 |
request-payment(要求者付費) | 佈建要求者付費模式。 |
restore(解凍檔案) | 解凍歸檔、冷歸檔、深度冷歸檔檔案。 |
rm(刪除) | 刪除不再需要的檔案(Object)、片段(Part)或儲存空間(Bucket),以免產生不必要的儲存費用。 |
set-acl(設定或修改ACL) | 設定或修改Bucket或Object的存取權限ACL。 |
set-meta(管理檔案中繼資料) | 為已上傳的檔案(Object)設定、修改或者刪除檔案中繼資料。 |
sign(產生簽名URL) | 建立簽名URL,授權第三方使用者在指定時間內下載或者預覽檔案。 |
stat(查看Bucket和Object資訊) | 查看指定儲存空間(Bucket)或者對象(Object)的相關資訊。 |
website(靜態網站託管及回源配置) | 添加、修改、查詢、刪除Bucket的靜態網站託管以及回源配置。 |