กำลังดาวน์โหลดโฟลเดอร์จาก aws s3, cp หรือ sync?


116

หากฉันต้องการดาวน์โหลดเนื้อหาทั้งหมดของไดเร็กทอรีบน S3 ลงในเครื่องพีซีของฉันฉันควรใช้ cp หรือ sync คำสั่งใด

ความช่วยเหลือใด ๆ จะได้รับการชื่นชมอย่างมาก

ตัวอย่างเช่น,

ถ้าฉันต้องการดาวน์โหลดเนื้อหาทั้งหมดของ "โฟลเดอร์นี้" ไปยังเดสก์ท็อปของฉันจะมีลักษณะเช่นนี้หรือไม่

 aws s3 sync s3://"myBucket"/"this folder" C:\\Users\Desktop

คำตอบ:


201

การใช้aws s3 cpจากAWS Command-Line Interface (CLI)จะต้องใช้--recursiveพารามิเตอร์เพื่อคัดลอกไฟล์หลายไฟล์

aws s3 cp s3://myBucket/dir localdir --recursive

aws s3 syncคำสั่งจะตามค่าเริ่มต้นคัดลอกไดเรกทอรีทั้งหมด มันจะคัดลอกไฟล์ใหม่ / แก้ไขเท่านั้น

aws s3 sync s3://mybucket/dir localdir

เพียงทดลองเพื่อให้ได้ผลลัพธ์ที่คุณต้องการ

เอกสารประกอบ:


3
ฉันใช้เวลาสองสามนาทีเพื่อหาว่าจะหา aws cli ได้ที่ไหน นี่คือ: aws.amazon.com/cli
Bjørn Stenfeldt

@dnafication โปรดสร้างคำถามใหม่แทนที่จะถามคำถามในความคิดเห็นเกี่ยวกับคำถามเก่า
John Rotenstein

1
aws s3 cp s3://myBucket/dir localdir --recursive. การทำงานนี้เหมือนมีเสน่ห์ หากข้ามแฟล็ก --recursive จะแสดงข้อผิดพลาดที่ไม่เป็นประโยชน์:fatal error: An error occurred (404) when calling the HeadObject operation: Key "myBucket" does not exist
Siddhartha

แต่ถ้าไฟล์ zip ขนาดใหญ่เป็น GB จะมีคำแนะนำอย่างไร
Kanagavelu Sugumar

@KanagaveluSugumar โปรดสร้างคำถามใหม่แทนที่จะถามผ่านความคิดเห็นในคำถามเก่า
John Rotenstein

4

ในกรณีที่คุณจำเป็นต้องใช้โปรไฟล์อื่นโดยเฉพาะข้ามบัญชี คุณต้องเพิ่มโปรไฟล์ในไฟล์กำหนดค่า

[profile profileName]
region = us-east-1
role_arn = arn:aws:iam::XXX:role/XXXX
source_profile = default

จากนั้นหากคุณกำลังเข้าถึงเพียงไฟล์เดียว

aws s3 cp s3://crossAccountBucket/dir localdir --profile profileName


2

ในกรณีที่คุณต้องการดาวน์โหลดไฟล์เดียวคุณสามารถลองใช้คำสั่งต่อไปนี้:

aws s3 cp s3://bucket/filename /path/to/dest/folder

1

เพิ่งใช้ AWS CLI เวอร์ชัน 2 สำหรับตัวเลือก s3 ตอนนี้ยังมีตัวเลือก --dryrun เพื่อแสดงให้คุณเห็นว่าจะเกิดอะไรขึ้น:

aws s3 --dryrun cp s3://bucket/filename /path/to/dest/folder --recursive

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.