我可以使用
在顶层创建一个目录s3.create_bucket(Bucket=bucket_name)
我想创建一个新的存储桶和子文件夹,所以我有一个如下的目录结构:
-top_level_bucket
-sub_folder
-sub_sub_folder
我想做这样的事情来立即创建所有内容(如果尚不存在的话):
path = 'top_level_bucket/sub_folder/sub_sub_folder'
s3.create_bucket(Bucket=path)
这可能吗?
Amazon S3 中没有“子存储桶”的概念。
Amazon S3 实际上是一种平面对象存储服务。它不使用目录。
相反,文件上传时带有路径,例如:
aws s3 cp file.txt s3://my-bucket/bob/files/file.txt
对象的全名是:
bob/files/file.txt
它看起来和行为就像有目录,但它们实际上并不在那里。事实上,您可以运行上面的命令,它会自动“创建”
bob
和 files
目录,但它们实际上并不存在!如果删除该对象,这些目录将会消失(因为它们实际上从未存在过!)。
底线: 将文件上传到您想要的任何位置,即使存储桶不存在。不用担心提前创建文件夹结构。