Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 如何枚举存储桶中S3文件夹中的所有文件?_Ruby_Amazon Web Services_Ruby On Rails 4_Amazon S3 - Fatal编程技术网

Ruby 如何枚举存储桶中S3文件夹中的所有文件?

Ruby 如何枚举存储桶中S3文件夹中的所有文件?,ruby,amazon-web-services,ruby-on-rails-4,amazon-s3,Ruby,Amazon Web Services,Ruby On Rails 4,Amazon S3,如何使用Ruby SDK获取特定S3 bucket目录中每个文件的名称和内容 枚举S3存储桶中的对象很简单(例如,my_bucket)。从文档中: bucket = s3.buckets['my_bucket'] bucket.objects.each do |obj| puts obj.key end 但是现在如果我想要目录my_bucket/some_folder中的所有文件,我不知道如何枚举它们,在文档中也找不到任何东西。我试着用my_bucket/some_folder切换my_b

如何使用Ruby SDK获取特定S3 bucket目录中每个文件的名称和内容

枚举S3存储桶中的对象很简单(例如,
my_bucket
)。从文档中:

bucket = s3.buckets['my_bucket']
bucket.objects.each do |obj|
  puts obj.key
end

但是现在如果我想要目录
my_bucket/some_folder
中的所有文件,我不知道如何枚举它们,在文档中也找不到任何东西。我试着用
my_bucket/some_folder
切换
my_bucket
,但这导致了AWS错误。有什么想法吗?

您可以使用带有前缀的
。方法:

bucket.objects.with_prefix('some/folder/')

然后你可以一个接一个地把它们拿来。上面返回一个
枚举数
。如果您在地图上调用
.map
,您可以访问,例如,当地图
.last\u modified
时,以及其他内容。

您可以使用
.with\u prefix
方法:

bucket.objects.with_prefix('some/folder/')

然后你可以一个接一个地把它们拿来。上面返回一个
枚举数
。如果您在地图上调用
.map
,您可以访问,例如,当地图被
.last\u修改时,以及其他内容。

非常感谢Robert!您是否也知道是否有一种方法可以在没有路径的情况下获取结果对象的名称?否则,当您获取
object.key
时,它会给出
一些/folder/my_object.txt
,而我只需要
my_object.txt
。谢谢(计时器启动后2分钟内我接受)当然,如果你知道
前缀
some/folder/
)并且你有
名称
some/folder/my_object.txt
),只要写
名称[prefix.length.-1]
。谢谢罗伯特!您是否也知道是否有一种方法可以在没有路径的情况下获取结果对象的名称?否则,当您获取
object.key
时,它会给出
一些/folder/my_object.txt
,而我只需要
my_object.txt
。谢谢(计时器启动后2分钟内我接受)当然,如果你知道
前缀
some/folder/
)并且你有
名称
some/folder/my_object.txt
),只要写
名称[prefix.length.-1]