首页 > 解决方案 > 如何使用基于列表的 AWS CLI 下载文件?

问题描述

我正在尝试从包含数百万 IRS 文件的公共 s3 存储桶下载文件子集。我可以使用以下命令下载整个存储库:

aws s3 sync s3://irs-form-990/ ./

但是时间太长了!

我知道我应该使用 --include / --exclude 标志,但我不知道如何将它们与值列表一起使用。我有一个 csv,其中包含我想要的 2017 年所有文件的唯一标识符,但是如何在 AWS CLI 中使用它?该列表本身有 50 万个 ID 长。

在此处输入图像描述

非常感谢帮助。谢谢你。

标签: amazon-web-servicesamazon-s3command-line

解决方案


有一个 bash 脚本可以从文件 filename.txt 中读取所有文件名。您所要做的就是将这些 ID 转换为文件名。

#!/bin/bash  
set -e  
while read line  
do  
   aws s3 cp s3://bucket-name/$line dest-path/  
done <filename.txt

之前有人问过这个问题,你可以在这里找到答案


推荐阅读