You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用AWS CLI复制版本化S3存储桶中的旧版本文件?

如何使用AWS CLI将S3存储桶的旧版本文件复制到同一桶中

完全可以实现,核心是在复制命令中指定旧版本文件的版本ID,具体操作步骤如下:

1. 获取旧版本文件的版本ID

首先需要列出目标文件的所有版本信息,找到你需要的旧版本对应的VersionId:

aws s3api list-object-versions --bucket your-bucket-name --prefix path/to/your/target-file.txt

执行后会返回包含该文件所有版本的列表,从中提取目标旧版本的VersionId值。

2. 执行带版本ID的复制命令

使用aws s3 cp命令,并通过--version-id参数指定旧版本ID,即可将旧版本文件复制到同一存储桶的指定路径。

示例1:复制旧版本到原路径(生成新的当前版本)

如果需要将旧版本恢复为当前版本,可以直接复制到原路径,存储桶会自动生成一个新的版本记录(原旧版本依然保留):

aws s3 cp s3://your-bucket-name/path/to/your/target-file.txt s3://your-bucket-name/path/to/your/target-file.txt --version-id YOUR_OLD_VERSION_ID

示例2:复制旧版本到同一桶的新路径

如果需要保留当前版本,同时生成一个旧版本的副本到新路径:

aws s3 cp s3://your-bucket-name/path/to/your/target-file.txt s3://your-bucket-name/path/to/your/old-file-copy.txt --version-id YOUR_OLD_VERSION_ID

注意事项

  • 确保你的AWS身份拥有s3:GetObjectVersion(读取旧版本)和s3:PutObject(写入对象)的权限。
  • 版本化存储桶中所有版本都会被保留,复制操作不会删除任何已有版本,只会新增新的版本或对象。

内容的提问来源于stack exchange,提问作者Roelant

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 16:05:01