最後更新日期:2024 年 10 月 13 日
Table of Contents
安裝 AWS CLI
在 bash 下執行
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
測試是否能正常執行
aws --version
設定權限資料
在設定前,要在 AWS 管理頁面上建好 IAM 帳號,並指定給他適當的 S3 存取權限。
產生存取的秘鑰,並準備好以下資料,長得大概像這樣子,這些值是參考用的,請依自己的設定為主
AWS_ACCESS_KEY_ID=AKIXXXXXYYYYYZZZZZIK
AWS_SECRET_ACCESS_KEY=xp2M8wBct8EXjhsMIuVZ785ygj9fqGRBfrW5gk9C
AWS_DEFAULT_REGION=ap-northeast-1
AWS_BUCKET="my-first-test-bucket"
然後執行設定程式
aws configure
執行後,回管相對應的問題,他會在 ~/.aws 下,幫我們建立好相關的設定檔
建立儲存貯體 (Bucket)
建立一個名為 my-first-test-bucket 的貯體
aws s3 mb my-first-test-bucket
複製 /上傳檔案 (cp)
可用來將「檔案」複製到遠端 s3,也可以在 s3 間複製檔案
假設我們在家目錄下有個 logo.png 檔案想要上傳到 s3
aws s3 cp logo.png s3://my-first-test-bucket
aws s3 cp s3://my-first-test-bucket/logo.png s3://my-first-test-bucket/new-logo.png
同步檔案 (sync)
可用來將「檔案」或「目錄」跟遠端 s3 同步。
同步的意思是,如果有檔案有變更,就會上傳;反之,則略過不上傳。
上傳同步
假設我們在家目錄下有個 images 目錄想要上傳到 s3,並保留 images 目錄。
記得要在目標端的 s3 bucket 指定 images 目錄,否則會把 images 下的所有檔案複製到 s3 的根目錄。
aws s3 sync images s3://my-first-test-bucket/images
下載同步
aws s3 sync s3://my-first-test-bucket/images images
設定 ACL
如果你有到 AWS 管理網頁設定 Bucket 的 ACL, 你可以在同步時用 --acl
指定 ACL 權限
aws s3 sync --acl public-read images s3://my-first-test-bucket/images
查看檔案/目錄
aws s3 ls s3://my-first-test-bucket
移動 / 重新命名檔案
僅可處理檔案,無法處理目錄
aws s3 mv s3://my-first-test-bucket/logo.png s3://my-first-test-bucket/old-logo.png
刪除檔案或目錄
aws s3 rm s3://my-first-test-bucket/old-logo.png
aws s3 rm s3://my-first-test-bucket/images
刪除儲存貯體 (Bucket)
Bucket 必須要是空的,才可以刪除
aws s3 rb s3://my-frist-test-bucket
Comments