HostOnNet Blog

Upload files to Amazon S3 from Linux Command Line

Looking for Linux Server Admin or WordPress Expert? We can help.


Amazon provide awscli command line tool to upload files from Linux command line to Amazon S3.

This is a python package, so you need pip installed for installing awscli, if you dont have pip installed, install it with

curl "" -o ""

Now install awscli with

pip install awscli

To configure aswcli, you need to create a new Amazon Identity, that give you AWS Access Key ID and AWS Secret Access Key.

When creating user, give it full access to Amazon S3.

root@server2 [~]# aws configure
AWS Secret Access Key [None]: R90YcLbwwr5+54Nok6ki5oi+28D6vRQGFuUTaq1w
Default region name [None]: us-west-2
Default output format [None]: 
root@server2 [~]# 

To upload files, you need to create a S3 Bucket, in this case, i created bucket with name bkjoe.

For uploading single file, run

root@server2 [~]# aws s3 cp /home/cpmove-windowwa.tar.gz s3://bkjoe
upload: ../home/cpmove-windowwa.tar.gz to s3://bkjoe/cpmove-windowwa.tar.gz
root@server2 [~]# 

To upload a folder and all files inside, run

root@server2 [~]# aws s3 cp /backup/deleted-on-2016-04 s3://bkjoe/deleted-on-2016-04/  --recursive
upload: ../backup/deleted-on-2016-04/cpmove-blindsma.tar.gz to s3://bkjoe/deleted-on-2016-04/cpmove-blindsma.tar.gz
upload: ../backup/deleted-on-2016-04/cpmove-diyshutt.tar.gz to s3://bkjoe/deleted-on-2016-04/cpmove-diyshutt.tar.gz
upload: ../backup/deleted-on-2016-04/cpmove-floridab.tar.gz to s3://bkjoe/deleted-on-2016-04/cpmove-floridab.tar.gz
upload: ../backup/deleted-on-2016-04/cpmove-springfi.tar.gz to s3://bkjoe/deleted-on-2016-04/cpmove-springfi.tar.gz
upload: ../backup/deleted-on-2016-04/cpmove-theblin.tar.gz to s3://bkjoe/deleted-on-2016-04/cpmove-theblin.tar.gz
upload: ../backup/deleted-on-2016-04/cpmove-wlndowco.tar.gz to s3://bkjoe/deleted-on-2016-04/cpmove-wlndowco.tar.gz
upload: ../backup/deleted-on-2016-04/cpmove-yourblin.tar.gz to s3://bkjoe/deleted-on-2016-04/cpmove-yourblin.tar.gz
root@server2 [~]# 

awscli can do more than S3. To find more about awscli, read

Posted in Linux

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.