在Amazon S3中,我在该多个子文件夹下创建了1个桶
<bucket_name>/<year>/<month>/<day>/files
(即对象)。
我希望功能可以根据要求我按年/月/日下载批量对象,所有文件都是zip。
Amazon Java SDK有什么方法可以做到这一点吗?
答案 0 :(得分:2)
传输管理器库提供了MultipleFileDownload
方法,提供整个虚拟目录的多个文件下载。但是,内容没有压缩。
请参阅:MultipleFileDownload javadoc
由于您的对象按年/月/日显示在目录中,因此您可以使用此方法下载特定路径中的所有文件。但是,文件不会被压缩。
答案 1 :(得分:0)
您可以使用mc工具实现它:
mc cp -r https://bucketName.s3.amazonaws.com/<year>/<month>/<day> backupdir
它从S3复制到本地目录backup
然后您可以通过以下方式压缩backup
目录:
zip backupdir.zip -r backupdir