網(wǎng)站 框架圖希愛力副作用太強(qiáng)了
AWS CLI 操作指南
世間本來就存在許多樂境,只是現(xiàn)代人為世間所累而未能予以關(guān)注,也就失去了許多體驗(yàn)樂境的機(jī)會。比如,忙里偷閑看云,以悠閑的心看悠閑的云,便是一種極妙的樂境。
本文將介紹如何配置 AWS CLI,并逐步展示如何執(zhí)行常見的 AWS S3 操作,包括配置 AWS、安裝 AWS CLI、上傳文件、刪除文件等。
1. 安裝 AWS CLI
首先,確保你已經(jīng)在系統(tǒng)中安裝了 AWS CLI 工具。下面是在常見的操作系統(tǒng)上安裝 AWS CLI 的方法:
1.1 在 Linux 系統(tǒng)上安裝
你可以通過 pip
(Python 包管理工具)來安裝 AWS CLI。打開終端,運(yùn)行以下命令:
sudo pip install awscli
或者,如果你的系統(tǒng)使用 apt
(Debian 系列),可以運(yùn)行:
sudo apt-get install awscli
1.2 在 Windows 系統(tǒng)上安裝
Windows 用戶可以直接下載 AWS CLI 安裝包,訪問 AWS CLI 下載頁面進(jìn)行下載安裝。
安裝完成后,打開命令提示符,輸入以下命令以驗(yàn)證安裝:
aws --version
1.3 配置 AWS CLI
安裝完成后,你需要配置 AWS CLI。配置時(shí),系統(tǒng)會要求輸入 AWS Access Key ID、AWS Secret Access Key 和 Region 等信息。
運(yùn)行以下命令啟動配置過程:
aws configure
系統(tǒng)會提示你輸入:
- AWS Access Key ID:從 AWS IAM 控制臺獲取。
- AWS Secret Access Key:從 AWS IAM 控制臺獲取。
- Default region name:選擇你常用的 AWS 區(qū)域,例如
us-west-2
。 - Default output format:選擇輸出格式,通常選擇
json
。
2. 常見 AWS S3 操作
2.1 查看 S3 存儲桶
你可以使用 aws s3 ls
命令列出你賬戶下的所有 S3 存儲桶:
aws s3 ls
這個(gè)命令將列出所有 S3 存儲桶的名稱和相關(guān)信息。
2.2 列出存儲桶中的文件
要查看某個(gè)存儲桶中的文件,可以使用以下命令:
aws s3 ls s3://your-bucket-name/
這個(gè)命令會列出存儲桶 your-bucket-name
中的所有文件和目錄。
2.3 上傳文件到 S3
使用 aws s3 cp
命令將本地文件上傳到 S3 存儲桶。例如,將本地的 file.txt
上傳到 my-bucket
存儲桶中:
aws s3 cp ./file.txt s3://my-bucket/
你還可以上傳整個(gè)文件夾,使用 --recursive
參數(shù):
aws s3 cp ./local-folder/ s3://my-bucket/ --recursive
2.4 同步本地文件夾到 S3 存儲桶
如果你希望將本地的文件夾同步到 S3 存儲桶,可以使用 aws s3 sync
命令。以下命令會將本地 /home/
目錄下的所有文件同步到 S3 存儲桶 ceshi
下的路徑 ecs-backup/10-50-158-73/$(date +%Y-%m-%d)/
中:
aws s3 sync /home/ s3://ceshi/ecs-backup/10-50-158-73/$(date +%Y-%m-%d)/ --delete
說明:
--delete
參數(shù)會刪除目標(biāo) S3 存儲桶中不再本地存在的文件。請謹(jǐn)慎使用。
2.5 查看存儲桶中的文件夾內(nèi)容
如果你想查看 S3 存儲桶中某個(gè)“文件夾”的內(nèi)容,使用類似以下命令:
aws s3 ls s3://my-bucket/folder1/subfolder/
這個(gè)命令會列出 folder1/subfolder/
下的所有文件。需要注意的是,S3 并沒有真正的文件夾,路徑結(jié)構(gòu)僅是通過對象的前綴來模擬的。
2.6 刪除文件或文件夾
要刪除 S3 存儲桶中的文件,可以使用 aws s3 rm
命令。例如,刪除 my-bucket
存儲桶中的 file.txt
文件:
aws s3 rm s3://my-bucket/file.txt
如果你想刪除整個(gè)目錄下的所有文件,可以使用 --recursive
參數(shù):
aws s3 rm s3://my-bucket/folder-name/ --recursive
2.7 刪除存儲桶
如果你想刪除一個(gè)空的 S3 存儲桶,可以使用以下命令:
aws s3 rb s3://my-bucket/
2.8 刪除版本化對象
如果存儲桶啟用了版本控制并且你需要刪除版本化對象,可以使用 --version-id
參數(shù):
aws s3 rm s3://my-bucket/file.txt --version-id <version-id>
如果要刪除所有版本的文件,可以使用 --versions
參數(shù):
aws s3 rm s3://my-bucket/ --recursive --versions
3. 常見問題解答
3.1 如果目標(biāo)文件夾不存在,aws s3 sync
會失敗嗎?
如果目標(biāo)文件夾(前綴)不存在,aws s3 sync
命令并不會失敗。AWS S3 會自動創(chuàng)建缺失的路徑,命令會正常執(zhí)行。你可以直接使用 aws s3 sync
同步文件夾,而不需要擔(dān)心文件夾是否存在。
3.2 如何進(jìn)入 S3 中的“文件夾”?
在 AWS S3 中,文件夾實(shí)際上是通過文件路徑的前綴來模擬的。你不能像在傳統(tǒng)文件系統(tǒng)中那樣“進(jìn)入”文件夾。要查看某個(gè)“文件夾”中的內(nèi)容,你可以使用 aws s3 ls
命令指定該文件夾的路徑。例如:
aws s3 ls s3://my-bucket/folder1/subfolder/
4. 總結(jié)
本指南涵蓋了從安裝 AWS CLI 到常見的 AWS S3 操作的內(nèi)容,包括上傳、刪除、同步文件以及查看存儲桶內(nèi)容。通過掌握這些基本操作,你可以高效地管理 AWS 上的 S3 存儲。