gpt4 book ai didi

amazon-web-services - 由LastModified搜索AWS S3中的文件

转载 作者:行者123 更新时间:2023-12-01 22:36:35 25 4
gpt4 key购买 nike

我想根据进行中的文件创建时间(或LastModified)时间在AWS S3中搜索文件。我知道在Python中使用boto3 paginator的情况,它提供了提供查询字符串的选项,但想在旅途中实现相同的目的。

任何建议或go-lang中的任何示例将不胜感激?

示例代码我正在尝试列出所有文件:

for s.NextContinuationToken != ""  { 

maxFileRead := 15

bucket := "XXX-XXX-test"

// To check if previous result was truncated
if s.IsTruncated {
fileList, err = s.session.ListObjectsV2(&s3.ListObjectsV2Input{
Bucket: aws.String(bucket),
MaxKeys: aws.Int64(maxFileRead),
ContinuationToken: &s.NextContinuationToken,
})
} else {
fileList, err = s.session.ListObjectsV2(&s3.ListObjectsV2Input{
Bucket: aws.String(bucket),
MaxKeys: aws.Int64(maxFileRead),
})
}

s.IsTruncated = *fileList.IsTruncated

if s.IsTruncated {
s.NextContinuationToken = *fileList.NextContinuationToken
} else {
s.NextContinuationToken = ""
}

if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case s3.ErrCodeNoSuchBucket:
fmt.Println(s3.ErrCodeNoSuchBucket, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
}
}

现在,我想将搜索修改为仅列出在特定时间之后创建的文件。

最佳答案

  • 在每个存储桶上调用ListObjectsV2(https://docs.aws.amazon.com/sdk-for-go/api/service/s3/#S3.ListObjectsV2)。
  • 返回的Contents属性是有关每个存储桶对象的元数据列表。
  • 使用LastModified字段。
  • 关于amazon-web-services - 由LastModified搜索AWS S3中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61390949/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com