如何使用Fog重命名文件?

我有一个rails 3.2 app。 使用雾来存储S3中的文件。

我想编写一个脚本来重命名已上传的所有文件。 我似乎无法在这个领域找到任何雾文件。

雾有可能吗? 我需要另一颗gem吗?

坏消息是你需要做一个get / create / destroy

foo = bucket.files.get 'foo' bar = bucket.files.create :key => 'bar', :body => foo.body foo.destroy 

好消息是,如果您在同一地区从ec2进行此操作,它可能会像在本地计算机上重命名文件一样快

如本文所述,复制怎么样? 比照 雾的要求来源和雾的模型来源 。

你应该能够做到:

 storage.copy_object('old_bucket', 'old_filename', 'new_bucket', 'new_filename') 

要么

 file.copy('new_bucket', 'new_filename') 

尽管如此,在成功复制后仍然需要销毁原始文件。