如何在不删除Amazon S3存储桶旧文件的情况下,使用文件的最新版本创建新文件夹?

用户名

最近,我创建了一个函数,该函数将带有数据库文件的文件夹发送到亚马逊(备份)的S3存储桶中。

我正在使用一个名为FindIt-> https://github.com/substack/node-findit的包我用它列出我的文件,然后将它们发送到我的存储桶

这是我的功能:

finder.on('file', function (file, stat) {
    var params = {
        Bucket: 'bucket-test-test-my-company',
        Key: file,
        Body: fs.createWriteStream(file)
    };
});

    s3.putObject(params, function(err, res) {
        if(err) {
            console.log(err);
        }
        else {
            console.log("Success");
        }
        callback(err);
    });

工作正常,我的文件夹里面的备份文件正在发送中。

该文件将每天发送,我不希望更新,我想用日期或一些已知顺序来创建一个新文件夹。

我真的不知道该怎么做,请帮忙吗?可能有一些教程?

谢谢。

迈克尔-SQLbot

Key,在上传的代码,是你想要的对象住,桶里面的路径。

您所要做的就是backups/daily/2014-20-09/在上传之前,在字符串前添加一个表示当前备份“路径”的字符串,例如每个文件名的开头。

S3中的文件夹不是真实的,因此不必创建它们...但是,如果您在每个键中添加前缀字符串,并且该前缀包含/斜杠,那么您的文件将在S3控制台中显示在文件夹中,正如您所期望的。

请注意,您不需要/在前缀中加前导,但确实需要在末尾加前导只需构建字符串并将其添加到您用于的值的开头即可Key:

或者,您可以在存储桶中启用版本控制。当您“覆盖”文件时,不会删除该文件-它仅成为文件的“先前版本”,并且所有先前的版本仍然可用,但是下载“该文件”而不指定版本将检索最新版本。

http://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Amazon S3存储桶中创建新文件夹?

如何在不公开对象文件夹的情况下访问 S3 存储桶中的对象

Git:如何在不下载整个存储库的情况下下载最新版本的存储库文件?

如何遍历文件夹,但仅检索文件的最新版本?

如何使用AWS PowerShell在S3中创建新文件夹

使用API在Amazon S3存储桶中创建文件夹/上传文件

如何使用Terraform在Amazon S3存储桶中创建文件夹

如何在不删除任何文件的情况下从跟踪文件夹中分离文件夹?

如何在不删除上传文件的情况下部署新版本的 ASP.NET App 和 Docker?

如何在没有版本控制的情况下获取 S3 存储桶中所有文件的大小?

如何在不创建新文件的情况下更新文件

rclone - 如何列出 AWS S3 存储桶中具有最新文件的目录?

删除位于Amazon S3上存储桶中的子文件夹中的文件

如何在不使用AWS CLI的情况下使用S3专用存储桶下载文件

如何在不删除指定文件的情况下反转目录中的删除文件

默认情况下,如何防止新文件夹继承父文件夹权限?

如何在不删除依赖的情况下删除deb

git stash drop:如何在不删除最新X的情况下删除旧的隐藏状态?

如何从Amazon S3存储桶中的文件夹中获取所有文件?

如何使用diff创建补丁程序以删除文件夹并创建新文件夹?

PHP Storm:如何在不删除文件的情况下删除项目

如何在不删除其中的文件的情况下删除 git repo

Google云端存储:如何使用gsutil获取存储桶/文件夹中的新文件列表

如何通过python脚本在s3存储桶上创建文件夹?

如何在不删除文件的情况下销毁文件内容

如何在不删除现有文件的情况下覆盖文件?

如何在不删除文件内容的情况下保存在相同的.mat文件中?

如何在不创建新文件的情况下使用texteditor打开终端输出?

使用 .net SDK 从 Amazon S3 存储桶下载文件夹