【问题标题】:How to list key in Amazon S3 with wildcard如何使用通配符列出 Amazon S3 中的密钥
【发布时间】:2016-07-02 14:48:12
【问题描述】:

作为 AWS 网站,请参阅 this link,AWS 提到 S3 上的密钥名称应使用散列或随机的十六进制值序列命名,以优化 S3 实际存储数据的性能,例如。

  • /bucket-name/a2f0/test/001.txt
  • /bucket-name/83de/test/002.txt
  • /bucket-name/c1aa/test/003.txt

正如他们在网站上提到的关于列出前缀为“[0-f][0-f][0-f][0-f]/test/”的键,但我已经尝试过,使用 Python 库 Boto 和's3cmd ls [prefix]',上面那3个文件都没有列出来。

有没有用这种通配符列出键?

【问题讨论】:

    标签: amazon-s3 boto


    【解决方案1】:

    这些天,建议使用AWS Command-Line Interface (CLI) 而不是s3cmd

    要列出对象,您需要包含存储桶的名称,例如:

    aws s3 ls s3://bucketname/
    

    这将显示 3 个对象的完整路径:

    a2f0/test/001.txt
    83de/test/002.txt
    c1aa/test/003.txt
    

    另外,请注意,仅当执行大量操作(例如每秒创建超过 100 个对象)时,才需要使用随机分布的哈希作为 Amazon S3 对象前缀的建议。在尝试使用散列方法之前,您可能想尝试使用不带散列的 S3,看看它是否满足您的性能要求。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-30
      • 1970-01-01
      • 1970-01-01
      • 2015-07-10
      • 1970-01-01
      • 1970-01-01
      • 2012-06-18
      • 1970-01-01
      相关资源
      最近更新 更多