2

我正在使用 boto 来解析 S3 存储桶。基本上我想在存储桶中归档某个文件(比如 *.header 或用户提供的任何其他正则表达式)。由于我在 boto 中找不到任何功能,因此我试图编写一个 BFS 例程来搜索每个文件夹的内容,但我找不到任何通过 key/key.name 获取文件夹内容的方法(我得到通过 bucketObj.list() )。有没有其他方法可以做到这一点?

例如,假设我在存储桶中有多个文件夹,例如

mybucket/A/B/C/x.txt
mybucket/A/B/D/y.jpg
mybucket/A/E/F/z.txt 

我想找到 *.txt 在哪里

所以boto脚本应该返回我以下结果

mybucket/A/B/C/x.txt
mybucket/A/E/F/z.txt
4

1 回答 1

5

无法使用 S3 进行通配符搜索或文件通配服务端。通过 API 可用的唯一过滤是prefix. 如果您指定一个prefix字符串,则只会返回以该字符串开头的结果prefix

否则,所有过滤都必须在客户端进行。或者,您可以将密钥存储在数据库中并使用它来进行搜索,并且只从 S3 检索匹配项。

于 2013-06-08T16:19:43.267 回答