1

我能够过滤特定日期的数据,但不能过滤日期范围数据。喜欢 12-09-2019 到 15-09-2019 使用 AWS CLI

例如。过滤 2019 年的数据,我正在使用 --recursive --exclude "*" --include " 2019 "

4

1 回答 1

3

您将需要使用 s3api 来处理使用JMESPath语法的查询

aws s3api list-objects-v2 --bucket BUCKET --query "Contents[?(LastModified>='2019-09-12' && LastModified<='2019-09-15')].Key"

您也可以指定时间

aws s3api list-objects-v2 --bucket BUCKET --query "Contents[?(LastModified>='2019-09-12T12:00:00.00Z' && LastModified<='2019-09-15T12:00:00.00Z')].Key"

这种方法的缺点是它必须列出每个对象并执行查询。对于大型存储桶,如果您可以限制为前缀,它将加快您的搜索速度。

aws s3api list-objects-v2 --bucket BUCKET --prefix PREFIX --query "Contents[?(LastModified>='2019-09-12T12:00:00.00Z' && LastModified<='2019-09-15T12:00:00.00Z')].Key"

如果您的主要查找是按日期,那么请按照日期/时间排序顺序存储对象,因为您可以使用前缀选项来加快搜索速度。几个例子。

prefix/20190615T041019Z.json.gz
2019/06/15/T041019Z.json.gz

这将

于 2019-08-30T14:04:16.127 回答