AWS S3 CLI中的选择性文件下载

use*_*385 18 amazon-s3 amazon-web-services

我有S3桶中的文件,我试图根据日期下载文件,如8月8日,8月​​9日,我如何下载选择性日期文件?我使用了以下代码,但它仍然下载整个存储桶列表

aws s3 cp s3://bucketname/ folder/file --profile pname --exclude \"*\" --recursive --include \"" + "2015-08-09" + "*\"
Run Code Online (Sandbox Code Playgroud)

我不确定,如何实现这一目标.

Joh*_*ein 40

此命令将复制以2015-08-15下列开头的所有文件:

aws s3 cp s3://BUCKET/ folder --exclude "*" --include "2015-08-15*" --recursive
Run Code Online (Sandbox Code Playgroud)

如果您的目标是同步一组文件而不复制它们两次,请使用以下sync命令:

aws s3 sync s3://BUCKET/ folder
Run Code Online (Sandbox Code Playgroud)

这将复制自上次同步以来添加或修改的所有文件.

实际上,这相当于上面的cp命令:

aws s3 sync s3://BUCKET/ folder --exclude "*" --include "2015-08-15*"
Run Code Online (Sandbox Code Playgroud)

参考文献:

  • 当一个文件夹包含数年的日志时,下载最后一天的日志需要数小时,因为 `aws s3 sync ` 迭代所有这些并与 `exclude`/`include` 过滤器进行比较。有什么办法可以做得更快吗? (3认同)