You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用aws s3 ls列出S3桶中含指定模式的.tsv文件?

直接列出S3中符合模式的.tsv文件的方法

方法1:结合aws s3 ls与文本过滤工具

aws s3 ls本身不支持--exclude/--include参数,但可以用grep和awk配合实现需求:

aws s3 ls s3://<my bucket> --recursive | grep "report_filtered_count10\.tsv$" | awk '{print "s3://<my bucket>/" $4}'
  • aws s3 ls --recursive:递归列出桶内所有对象的详细信息
  • grep "report_filtered_count10\.tsv$":筛选出文件名以report_filtered_count10.tsv结尾的条目(注意转义.避免匹配任意字符)
  • awk '{print "s3://<my bucket>/" $4}':提取输出中的文件路径部分,拼接成完整的S3对象URL

方法2:用aws s3api list-objects-v2直接筛选(更高效)

使用S3 API命令配合--query参数,直接在服务端过滤结果,避免本地处理大量数据:

aws s3api list-objects-v2 --bucket <my bucket> --query "Contents[?contains(Key, 'report_filtered_count10.tsv')].{Path: 's3://<my bucket>/' + Key}" --output text
  • --query:用JMESPath语法筛选包含指定字符串的对象Key,拼接成完整S3路径
  • --output text:以纯文本格式输出结果,符合你期望的格式

为什么之前的尝试失败?

--exclude和--include参数仅适用于s3 sync、s3 cp等涉及对象传输的命令,aws s3 ls并不支持这些参数,因此会报错。

内容的提问来源于stack exchange,提问作者DaniCee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 22:34:56