使用 aws cli 将 30 天存档到 S3 存储桶

使用 aws cli 将 30 天存档到 S3 存储桶

我正在尝试自动执行存档功能,如果文件超过 30 天且已加密,它将被移动到 S3 以释放服务器上的磁盘空间。我现在遇到的问题是 aws cli 不包含目录路径。

find /mount/path/ -atime +30 -name *gpg* -o -name *pgp* -exec aws2 s3 cp {} s3://bucket-for-archive/ --acl bucket-owner-full-control --sse --dryrun \;

(dryrun) upload: ../../mount/path/more/path/file0001 to s3://bucket-for-archive/file0001.pgp
(dryrun) upload: ../../mount/path/more/path/file0002 to s3://bucket-for-archive/file0002.pgp

是否可以将文件以完整路径上传到存储桶?输出将如下所示:

(dryrun) upload: ../../mount/path/more/path/file0001 to s3://bucket-for-archive/mount/path/more/path/file0001.pgp
(dryrun) upload: ../../mount/path/more/path/file0002 to s3://bucket-for-archive/mount/path/more/path/file0002.pgp

答案1

这似乎有效,使用 {} 将目录和文件传递到 s3 路径

find /mount/path/ -atime +30 -name *gpg* -o -name *pgp* -exec aws2 s3 cp {} s3://bucket-for-archive{} --acl bucket-owner-full-control --sse --dryrun \;

相关内容