如何使用Ruby SDK获取特定S3存储桶目录中每个文件的名称和内容?
枚举S3存储桶中的对象很简单(例如my_bucket
)。来自文档:
bucket = s3.buckets['my_bucket']
bucket.objects.each do |obj|
puts obj.key
end
但是现在如果我想要目录my_bucket/some_folder
中的所有文件,我不知道如何枚举它们,而且我无法在文档中找到任何令人惊讶的内容。我尝试使用my_bucket
切换my_bucket/some_folder
,但这会导致AWS错误。有什么想法吗?
答案 0 :(得分:4)
您可以使用.with_prefix
方法:
bucket.objects.with_prefix('some/folder/')
然后您可以逐个获取它们。以上返回Enumerator
。如果您在其上调用.map
,则可以访问,例如.last_modified
时,等等。