簡體   English   中英

在S3中使用ruby復制_to

[英]copy_to in s3 using ruby

我正在嘗試將圖像從存儲桶復制到s3中的另一個存儲桶。

     AWS.config(
          :access_key_id => 'Bucket one key', 
          :secret_access_key => 'bucket one secret key'
     )
     s3 = AWS::S3.new

     bucket1 = s3.buckets["Bucket_one"]
     bucket2 = s3.buckets["Bucket_two"]
     obj1 = bucket1.objects["source_key"]
     obj2 = bucket2.objects["destination_key"]

     obj1.copy_to(obj2)

您能指導我如何檢索S3中已經上傳的文件的源密鑰嗎? 我有destination_key,bucket_one和bucket_two。

S3上的映像不是單個文件,而是多個文件名,這些文件名始於映像的名稱。 因此,您需要知道圖像的名稱。 一旦獲得它,容器應該看起來像:

bucket1 = s3.buckets["Bucket_one"]
bucket2 = s3.buckets["Bucket_two"]
bucket1.objects.with_prefix(image_name).each do |source_object|
  source_object.copy_to(bucket2.objects[source_object.key])
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM