博客 / 詳情

返回

AWS CLI入門教程(親測)

背景

因為公司有用到S3,所以整理了一個S3的簡單入門教程。當然,入門之後有其他更高級的用法需求,就靠自己去查文檔了。入門的教程能讓你快速上手,不至於翻閲一堆文檔,容易被勸退。這裏主要是介紹如何用cli去操作S3。

官方文檔

https://docs.aws.amazon.com/cli/latest/userguide/cli-services...

安裝客户端

https://docs.aws.amazon.com/zh_cn/cli/latest/userguide/gettin...

curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install

什麼是 Amazon S3

就是國內的對象存儲,更粗暴的比喻,可以理解成一個雲盤(只是一個有接口的雲盤)。
下邊是官方術語:

Amazon Simple Storage Service (Amazon S3) 是一種對象存儲服務,提供行業領先的可擴展性、數據可用性、安全性和性能。各種規模和行業的客户可以為幾乎任何使用案例存儲和保護任意數量的數據,例如數據湖、雲原生應用程序和移動應用程序。藉助高成本效益的存儲類和易於使用的管理功能,您可以優化成本、組織數據並配置精細調整過的訪問控制,從而滿足特定的業務、組織和合規性要求。

配置

aws configure

AWS Access Key ID [None]: xxx
AWS Secret Access Key [None]: xxx
Default region name [None]: cn-northwest-1
Default output format [None]: json

列出對象

#列出所有bucket
aws s3 ls

#列出單個bucket
aws s3 ls s3://bucket-name/

#列出bucket中的某個對象
aws s3 ls s3://bucket-name/example/

同步對象

s3 sync 將更新與目標位置中同名文件的大小或修改時間不同的任何文件。

#格式
$ aws s3 sync <source> <target> [--options]

下面的示例顯示瞭如何使用 --delete 選項。

// Delete local file
$ rm ./MyFile1.txt

// Attempt sync without --delete option - nothing happens
$ aws s3 sync . s3://my-bucket/path

// Sync with deletion - object is deleted from bucket
$ aws s3 sync . s3://my-bucket/path --delete
delete: s3://my-bucket/path/MyFile1.txt

// Delete object from bucket
$ aws s3 rm s3://my-bucket/path/MySubdirectory/MyFile3.txt
delete: s3://my-bucket/path/MySubdirectory/MyFile3.txt

// Sync with deletion - local file is deleted
$ aws s3 sync s3://my-bucket/path . --delete
delete: MySubdirectory\MyFile3.txt

// Sync with Infrequent Access storage class
$ aws s3 sync . s3://my-bucket/path --storage-class STANDARD_IA

移動對象

#格式
aws s3 mv <source> <target> [--options]

#將所有對象從 s3://bucket-name/example 移動到 s3://my-bucket/
aws s3 mv s3://bucket-name/example s3://my-bucket/

#將本地文件從當前工作目錄移動到 Amazon S3 存儲桶(相當於cp+rm)
aws s3 mv filename.txt s3://bucket-name

#將文件從 Amazon S3 存儲桶移動到當前工作目錄(相當於cp+rm)
aws s3 mv s3://bucket-name/filename.txt ./

複製對象

#將所有對象從 s3://bucket-name/example 複製到 s3://my-bucket/
aws s3 cp s3://bucket-name/example s3://my-bucket/

#以下示例使用 s3 cp 命令,將本地文件從當前工作目錄複製到 Amazon S3 存儲桶
aws s3 cp filename.txt s3://bucket-name

#下載單個文件
aws s3 cp s3://bucket-name/filename.txt ./

刪除對象

aws s3 rm s3://bucket-name/example/filename.txt #刪除單個文件
aws s3 rm s3://bucket-name/example --recursive#刪除所有對象

更多

更多最新文章,請關注同名公眾號。

user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.