我需要递归地下载存储桶中文件夹的目录树,但需要注意的是不要自己下载任何文件(它们很大)。这就是我到目前为止所做的:
s3cmd --dry-run --recursive --no-delete-removed --verbose --rinclude='^[^.]*$'
--rexclude='[^.]*$' sync s3://bucket_name/folder/ ~/Downloads/local_folder/
正确地跳过文件,但它没有下载文件夹。
以下是我发现的一些相关问题
答案 0 :(得分:2)
Amazon S3没有文件夹。最接近的概念是CommonPrefix
,它允许在“目录”内列出文件。
您必须编写自己的程序(例如在Python中使用boto
)来检索这些公共前缀并在本地创建目录结构。
顺便说一句,最近使用AWS Command-Line Interface (CLI)而不是s3cmd
会更好,因为它可以与所有 AWS服务协同工作,而不仅仅是使用Amazon S3。