如何使用s3cmd在S3上设置目标文件夹的名称

时间:2016-07-12 10:04:13

标签: bash amazon-s3 s3cmd

我有一个拥有3个网站的服务器,我有以下bash脚本,每天运行s3cmd sync命令:

#!/bin/sh
echo 'Started'
date +'%a %b %e %H:%M:%S %Z %Y'
s3cmd sync --recursive --preserve /etc/apache2 s3://mybucket
s3cmd sync --recursive --preserve /var/www/website1.com/public_html s3://mybucket
s3cmd sync --recursive --preserve /var/www/website2.com/public_html s3://mybucket
s3cmd sync --recursive --preserve /var/www/website3.com/public_html s3://mybucket
s3cmd sync --recursive --preserve /var/db_backups s3://mybucket
dpkg --get-selections > dpkg.list
s3cmd sync --recursive --preserve dpkg.list s3://mybucket
date +'%a %b %e %H:%M:%S %Z %Y'
echo 'Finished'

但问题是s3cmd sync命令会创建public_html文件夹并将所有3个网站放入该文件夹。

我想要做的是将三个网站备份到单独的文件夹中。如何使用上述命令实现此目的?

1 个答案:

答案 0 :(得分:1)

您可以将每个网站保存到存储桶中的其他位置

s3cmd sync --recursive --preserve /var/www/website1.com/public_html s3://mybucket/website1/
s3cmd sync --recursive --preserve /var/www/website2.com/public_html s3://mybucket/website2/
s3cmd sync --recursive --preserve /var/www/website3.com/public_html s3://mybucket/website3/