Exclude folders for s3cmd sync

user1503606 picture user1503606 · Feb 19, 2014 · Viewed 8.2k times · Source

I am using s3cmd and i would like to know how to exclude all folders within a bucket and just sync the bucket root.

for example

bucket
folder/two/
folder/two/file.jpg
get.jpg

with the sync i just want it to sync the get.jpg and ignore the folder and its contents.

s3cmd --config sync s3://s3bucket (only sync root) local/

If someone could help that would be amazing i have already tried the --exclude but not sure how to use it in this situation?

Answer

Sylvain picture Sylvain · Apr 18, 2014

You should indeed use the --exclude option. If you want to sync every file on the root but not the folders, you should try :

s3cmd --exclude="/*/*" sync local/ s3://s3bucket

Keep in mind that a folder doesn't really exist on S3. What seems to be a file file in a folder folder is just a file named folder/file! So you just have to exclude file with the pattern /*/*.