amazon-web-services - 提取 AWS S3 存储桶中特定文件夹内的链接
问题描述
我正在尝试让我的 AWS S3 API 列出我存储在 S3 存储桶中的对象。我已经成功地使用下面的代码从我的 S3 存储桶中提取了一些链接。
aws s3api list-objects --bucket my-bucket --query Contents[].[Key] --output text
问题是我的命令提示符中的输出没有列出整个 S3 Bucket 库存列表。是否可以更改此代码,以便我的 CLI 上的输出列出完整的库存?如果没有,是否有办法更改代码以针对 S3 存储桶中的特定文件名?例如,我的存储桶中的所有文件名都是日期,所以我会尝试从“my-bucket”存储桶中标题为 3_15_20 Videos 的文件中提取所有链接。提前致谢!
解决方案
来自list-objects — AWS CLI 命令参考:
list-objects
是分页操作。可以发出多个 API 调用以检索整个结果数据集。您可以通过提供--no-paginate
参数来禁用分页。
因此,尝试使用--no-paginate
并查看它是否返回所有对象。
如果您经常列出包含大量对象的存储桶,您还可以考虑使用Amazon S3 Inventory,它可以提供列出存储桶内容的每日 CSV 文件。
推荐阅读
- regex - 使用 DF、Grep、Awk 列出卷 | 重击壳
- javascript - Gatsby.js 中的 Polyfills - String.prototype.matchAll
- string - 如何将lua表中的条目视为字符串?
- aws-lambda - Traefik 具有到 ECS 后端的动态路由,作为一次性任务运行
- bash - BASH 停止没有错误,但如果在终端中复制则可以工作
- c# - 具有相同类型实体的多级级联删除
- python - 为什么我的 joblib 文件没有保存在与我的 Jupyter 文件相同的目录中?
- html - 有没有办法获取脚本标签被调用的位置?
- ajax - 自动加载 TabularForm Yii2 中的行
- python - 为什么Python中类继承中的一些__init__方法没有被调用?