S3:将子目录中的所有文件移动到公共目录中

时间:2012-12-03 17:16:15

标签: amazon-s3

我在S3上有很多包含大量图像(数百万)的子目录。将这些子目录中的文件变得很麻烦,并且由于所有文件名实际上都是唯一的,因此没有理由将它们存放在子目录中。因此,我需要找到一种快速且可扩展的方法,将所有文件从子目录移动到一个公共目录中,或者删除子目录而不删除文件。

有办法做到这一点吗?

我在红宝石上,但几乎可以接受任何事情

1 个答案:

答案 0 :(得分:1)

我在你的另一个问题上添加了评论,解释了为什么S3没有文件夹,而是文件名前缀(参见Amazon AWS IOS SDK: How to list ALL file names in a FOLDER)。

考虑到这一点,您可能需要使用两个S3 API调用的组合才能实现您的目的:将文件复制到新文件(从文件名中删除前缀)并删除原始文件。也许有一个Ruby S3 SDK或框架在那里暴露了一个重命名功能,但在幕后它可能是一个复制/删除。

相关问题:Amazon S3 boto: How do you rename a file in a bucket?