AWS CLI 命令列直接操作AWS控制檯
安裝(基於Python):
$ pip3 install awscli --upgrade --user
建議在Virtualenv下安裝,因為系統級別安裝經過測試經常無法安裝上。
如同git和docker,awscli
分為入口命令和功能命令,入口命令為aws
,功能命令各自對應一項aws服務。如aws s3
就是針對S3儲存的操作。
參考官方所有命令:AWS CLI Command Reference
配置檔案:
AWS CLI的配置檔案都存在~/.aws
目錄中,如果沒有可以自己建立。具體的每個配置檔案,都是ini
語法,如同git配置檔案一樣。
登入認證配置:
檔案是~/.aws/credentials
,可以配置多項登入用的key pairs:
[default] aws_access_key_id=YourKeyID aws_secret_access_key=YourSecretCode
具體的key pair的值,需要到AWS的許可權配置中自己新增IAM賬戶,然後自動獲得key pair。
進入官網: IAM - Security Credential
配置好後,就可以直接用aws xxx
命令操作了。awscli
會自動根據你的登入資訊,到你的賬戶查詢相關的資訊。
S3 靜態物件儲存
在awscli
已經配置好的情況下,直接可以用aws s3
命令進行一系列的操作:
# 列出當前賬戶下有哪些Bucket $ aws s3 ls # 列出指定bucket下有哪些檔案 $ aws s3 ls s3://bucket-name/path # 刪除 $ aws s3 rm s3://bucket-name/path/to/file
同步本地和遠端的資料夾(方向可換):
# $ aws s3 cp /path/to/local/file s3://bucket-name/path/to/file # 下載 # 同步 $ aws s3 sync <source> <target> [--options]
其中sync同步的選項和網頁管理後臺中顯示的選項一樣,有很多需要設定的:
-
--recursive
: -
--delete
: 刪除目標目錄中有而源目錄中沒有的 -
--exclude
: 排除指定的檔案和資料夾,語法和.gitignore
一樣很簡單 -
--include
: 在排除的資料夾裡挑出來包括指定的檔案和資料夾同步 -
--storage-class
: 儲存型別,可以是STANDARD
,STANDARD_IA
,GLACIER
-
--acl
: