Tải xuống các thư mục từ aws s3, cp hay sync?


108

Nếu tôi muốn tải tất cả nội dung của một thư mục trên S3 xuống PC cục bộ của mình, tôi nên sử dụng lệnh cp hoặc đồng bộ nào?

Bất cứ sự giúp đỡ nào cũng được đánh giá cao.

Ví dụ,

nếu tôi muốn tải tất cả nội dung của "thư mục này" xuống màn hình nền của mình, nó có giống như thế này không?

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

Câu trả lời:


185

Việc sử dụng aws s3 cptừ Giao diện dòng lệnh AWS (CLI) sẽ yêu cầu --recursivetham số để sao chép nhiều tệp.

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

Theo aws s3 syncmặc định, lệnh sẽ sao chép toàn bộ thư mục. Nó sẽ chỉ sao chép các tệp mới / sửa đổi.

aws s3 sync s3://mybucket/dir localdir

Chỉ cần thử nghiệm để có được kết quả bạn muốn.

Tài liệu:


3
Đã cho tôi vài phút để tìm ra nơi cần đến cli. Đây rồi: aws.amazon.com/cli
Bjørn Stenfeldt

@dnafication Vui lòng tạo một câu hỏi mới thay vì đặt câu hỏi trong nhận xét về một câu hỏi cũ.
John Rotenstein

aws s3 cp s3://myBucket/dir localdir --recursive. Công việc này như một cái duyên vậy. Nếu cờ --recursive được bỏ qua, nó ném một lỗi khá vô ích:fatal error: An error occurred (404) when calling the HeadObject operation: Key "myBucket" does not exist
Siddhartha

Nhưng nếu tệp zip đơn có kích thước lớn tính bằng GB, thì lời nhắc sẽ là gì?
Kanagavelu Sugumar,

@KanagaveluSugumar Vui lòng tạo một Câu hỏi mới thay vì hỏi qua nhận xét về một câu hỏi cũ.
John Rotenstein

4

Trong trường hợp bạn cần sử dụng hồ sơ khác, đặc biệt là tài khoản chéo. bạn cần thêm cấu hình vào tệp cấu hình

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

và sau đó nếu bạn chỉ đang truy cập một tệp

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


2

Trong trường hợp bạn muốn tải xuống một tệp duy nhất, bạn có thể thử lệnh sau:

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

0

Chỉ mới sử dụng phiên bản 2 của AWS CLI. Đối với tùy chọn s3, bây giờ cũng có tùy chọn --dryrun để cho bạn biết điều gì sẽ xảy ra:

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

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.