Posted under » AWS on 4 May 2021
First, make sure you have installed AWS Cli. Then try to list all your s3 buckets. You will realise that it is something like linux and rsync.
$ aws s3 ls
Next choose a bucket and list the objects.
$ aws s3 ls s3://project-seuss PRE media/ PRE static/
To see the contents of the media folder.
$ aws s3 ls s3://project-seuss/media taik.jpg
Now lets copy a file from your local folder to AWS s3. For the following examples, I am copying with from a folder.
$ aws s3 cp skype.ico s3://project-seuss/media/
It is important to note the trailing backslash for the directory.
Let's say you want to change the storage class to the cheaper "reduced redundancy".
$ aws s3 cp skype.ico s3://project-seuss/media/ --storage-class REDUCED_REDUNDANCY
Now lets sync your local folder to AWS S3.
$ aws s3 sync . s3://project-seuss/media/
All files and folders will be populated or sync from . to S3. If you want the sync to go from s3 to . then
$ aws s3 sync s3://project-seuss/media/ .
Let's say after a while, you want to delete a file from the folder and want the deletion to be in S3 too.
$ aws s3 sync . s3://project-seuss/media/ --delete
Let's say you want to exclude or include some files.
$ aws s3 sync . s3://project-seuss/media/ --exclude ".git/*" $ aws s3 sync . s3://project-seuss/media/ --include *.css $ aws s3 sync . s3://project-seuss/media/ --include *.css exclude *.html
You can move instead of sync but you have to put -r
$ aws s3 mv s3://project-seuss/media/ . --recursive