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

How To Set Name Of Target Folder on S3 with 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 个网站放入该文件夹。

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

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

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/