s3cmd命令是能够操作AWS S3的十分弱小的工具,不仅能够下载和上传文件,还有创立目录等性能。
s3cmd的应用场景是十分丰盛的,比方把本地的日志文件备份到S3时,就能够应用s3cmd和cron的组合,进行定期的备份。 比方日志文件的保留期间是365地利,应用s3cmd从S3删除指定的目录等等。
在这里介绍一下利用s3cmd命令上传/下载文件的办法。
上传文件
上传指定的目录
把/mnt/aws/backup目录上传到s3上。
awsok.com是bucket名称,aws/folder能够当成s3上的目录名。
–r也能够写成–recursive(递归),是指定backup目录下的包含子目录的所有文件的意思。
s3cmd put --r /mnt/aws/backup s3://awsok.com/aws/folder
上传指定的文件
把本地的index.html文件上传到s3的aws/folder目录下。
s3cmd put --r /mnt/aws/backup/index.html s3://awsok.com/aws/folder
上传文件时默认是非公开的,可明确的指定非公开选项–acl-private。
公开时应用–acl-public选项。
下载文件
下载指定的目录
把folder目录下的所有文件下载到本地的/tmp目录下。
s3cmd get -r s3://awsok.com/aws/folder /tmp
下载指定的文件
把folder目录下的index.html文件下载到本地的/tmp目录下。
s3cmd get s3://awsok.com/aws/folder/index.html /tmp
删除文件
删除指定的目录
从s3上删除folder目录。
s3cmd del -r s3://awsok.com/aws/folder
删除指定的文件
从s3的aws/folder目录下的index.html文件。
s3cmd del s3://awsok.com/aws/folder/index.html
参考链接:
3 Ways to List all the files in an AWS S3 bucket