Tôi có một xô với hai loại tên file:amazon s3 đổi tên và ghi đè tập tin, khuyến nghị và rủi ro
[Bucket]/[file]
[Bucket]/[folder]/[file]
Ví dụ, tôi có thể có:
MyBucket/bar
MyBucket/foo/bar
Tôi muốn đổi tên tất cả các [Bucket]/[folder]/[file]
file [Bucket]/[file]
file (và do đó ghi đè/loại bỏ các [Bucket]/[file]
tập tin).
Vì vậy, như trong ví dụ trước, tôi muốn MyBucket/foo/bar
để trở thành MyBucket/bar
(và ghi đè/duscard bản gốc MyBucket/bar
).
tôi đã cố gắng hai phương pháp:
- Sử dụng lệnh di chuyển s3cmd của:
s3cmd mv s3://MyBucket/foo/bar s3://MyBucket/bar
- Sử dụng SDK của Amazon cho php:
rename(s3://MyBucket/foo/bar, s3://MyBucket/bar)
Cả hai phương pháp có vẻ làm việc, nhưng - cân nhắc tôi phải làm đây là một quy trình theo lô trên hàng nghìn tệp,
câu hỏi của tôi là:
- Phương pháp nào được ưa thích hơn?
- Có phương pháp nào khác tốt hơn không?
- Tôi có phải xóa các tệp cũ trước khi di chuyển/đổi tên không? (có vẻ như hoạt động tốt mà không có nó, nhưng tôi có thể không nhận thức được rủi ro liên quan)
Cảm ơn bạn.
Xin chào! Tôi cũng đang cố gắng di chuyển và ghi đè lên các thư mục (và các tệp nằm của chúng) trong một nhóm duy nhất và tôi nhận thấy bạn đã có: đổi tên (s3: // MyBucket/foo/bar, s3: // MyBucket/bar). Làm thế nào để làm việc này trong PHP? Hay dòng đó chỉ hoạt động đúng nguyên văn trên EC2? – Schodemeiss
@AndyBarlow, tôi đã viết một bài về nó trong: http://eyalarubas.com/log/2012/10/16/using-aws-s3-stream-wrapper-for-php/. Liên hệ với tôi nếu bạn có thêm câu hỏi. – EyalAr