Đơn giản như âm thanh, nó có vẻ giống như một nhiệm vụ cực kỳ phức tạp.Làm thế nào để bạn đổi tên một thư mục trong một thùng trên S3?
Trả lời
Nếu bạn đang sử dụng đá quý aws-s3, mã sau sẽ đổi tên thư mục OLD_FOLDER_NAME trong nhóm BUCKET_NAME thành NEW_FOLDER_NAME:
bsize = OLD_FOLDER_NAME.size
bucket = AWS::S3::Bucket.find(BUCKET_NAME)
bucket.objects({:prefix=>OLD_FOLDER_NAME}).each do |o|
AWS::S3::S3Object.rename(o.key, NEW_FOLDER_NAME + o.key[bsize..-1], BUCKET_NAME)
end
Vậy đó. Thư mục không phải là đối tượng thực, vì vậy tất cả những gì bạn phải làm là đổi tên tất cả các đối tượng kết thúc trong đường dẫn cụ thể đó sang đường dẫn mới. Thư mục ảo sẽ được đổi tên thành kết quả.
Điều này đổi tên thư mục, tuy nhiên, nếu nội dung của thư mục được công khai, các quyền đó dường như bị mất trong quá trình đổi tên. – jpwynn
thêm quyền rõ ràng làm tham số thứ 4 để đổi tên() đặt quyền: truy cập =>: public_read mặc dù có thể có một số cách để giữ quyền trong quá trình đổi tên – jpwynn
Sử dụng BucketExplorer! Đây là một ứng dụng tuyệt vời! Bạn có thể làm khá nhiều thứ bạn từng muốn làm cho s3 của mình theo cách rất dễ hiểu GUI
Không thành thực, tôi vẫn mở cho các ý tưởng, nhưng đây là lựa chọn tốt nhất tôi tìm thấy. – Trip
Tôi đồng ý không phải vì thực tế giải pháp này yêu cầu cài đặt Java7, có thể giới thiệu khá nhiều thay đổi cấp hệ thống chỉ đơn giản là đổi tên một thư mục. Quá xấu, họ không viết lại nó như là một ứng dụng 'thực' mà không có sự phụ thuộc lớn của các phụ thuộc java. – jpwynn
Có vẻ như AWS Command Line Interface là cách mới để thực hiện các công cụ như thế này. Sử dụng nó, bạn có thể đổi tên một thư mục như thế này:
aws s3 mv --recursive s3://bucketname/oldfoldername s3://bucketname/newfoldername
Hãy chắc chắn và bắt đầu với các tùy chọn --dryrun
để chắc chắn rằng nó sẽ làm những gì bạn nghĩ rằng nó sẽ làm.
Nếu bạn sử dụng Bảng điều khiển quản lý S3, bạn có thể cắt và dán. Đi vào thư mục bạn muốn, nhấp Ctrl + A, sau đó nhấp vào Tác vụ> Cắt. Tạo thư mục mới của bạn và nhấp vào Tác vụ> Dán.
- 1. Thêm thư mục vào thùng Amazon s3
- 2. Đồng bộ hóa thư mục S3/thùng
- 3. Boto Amazon S3: Làm cách nào để đổi tên một tệp trong một nhóm?
- 4. Làm cách nào để đổi tên một thư mục?
- 5. Làm thế nào để sao chép hiệu quả tất cả các tệp từ một thư mục này sang thư mục khác trong thùng chứa aazon S3 bằng boto?
- 6. Làm thế nào để tạo thư mục trong thùng chứa S3 của IBM thông qua API PHP?
- 7. Làm cách nào để sao chép/sao chép một thư mục trên S3?
- 8. Làm thế nào để giám sát hiệu quả một thư mục để thay đổi trên linux?
- 9. Làm thế nào để bạn cấu hình S3BotoStorage hoặc collectstatic để tải lên thư mục con s3 bucket
- 10. Làm thế nào để viết một chuỗi vào thùng S3 của Amazon?
- 11. Đổi tên một số tệp trong một thư mục
- 12. aws-sdk cho thư mục truy cập Ruby trong thùng
- 13. Tôi có thể chuyển tệp vào 'thư mục' bên trong một thùng S3 bằng lệnh m3 s3cmd không?
- 14. Một cách sane để đổi tên một thư mục trong bản sao làm việc lật đổ
- 15. Git: Đổi tên một thư mục trong một chi nhánh
- 16. Trong Perforce trên Unix, làm thế nào để bạn thêm một thư mục là một liên kết tượng trưng?
- 17. Cách tải tệp lên thư mục trong thùng S3 bằng boto
- 18. Làm cách nào để đổi tên thư mục bằng Ant?
- 19. Làm thế nào để liệt kê các đối tượng _all_ trong thùng chứa S3 của Amazon?
- 20. Làm thế nào để quét một thư mục trong Java?
- 21. Zip toàn bộ thư mục trên S3
- 22. Làm cách nào để đổi tên một tệp trong POSIX?
- 23. Làm thế nào để làm cho github theo lịch sử thư mục sau khi đổi tên?
- 24. Làm thế nào để tạo một thư mục iOS?
- 25. Đổi tên hàng loạt các tệp trong một thư mục
- 26. Làm thế nào để đổi tên một gói trong symfony?
- 27. làm thế nào để liệt kê tất cả các thư mục con trong một thư mục
- 28. Làm thế nào để tạo ra một thư mục apache có thể đọc được trên ubuntu
- 29. S3 giới hạn đối tượng trong một thùng
- 30. Làm thế nào để commit một thư mục vào gitHub
@ John, nếu bạn đã chỉnh sửa gì thì sao? – Trip
Tôi tìm thấy CloudBerry dành cho cửa sổ hoạt động. Nhưng tôi ghét cửa sổ. Bất cứ ai biết một thay thế mac? – Trip
Tôi có một kịch bản sẽ làm điều này - e-mail cho tôi (zach tại longtailvideo dot com) và tôi sẽ chuyển tiếp nó cùng. –