如何使用命令行中的版本从AWS S3下载文件?

时间:2015-11-10 06:41:49

标签: rest amazon-web-services amazon-s3

我创建了一个带有版本控制的AWS S3存储桶,并创建了一个包含多个版本的文件。有什么办法可以使用命令行或API下载具有特定版本的文件吗?

4 个答案:

答案 0 :(得分:8)

通过command line

aws s3api list-object-versions ...

首先获取可用版本的列表:

jQuery(document).ready()

各自AWS SDKs中有类似的方法。

答案 1 :(得分:2)

要列出特定文件版本,请使用以下命令,您将获得ObjectVersionId

aws s3api list-object-versions --bucket bucketname --prefix  folder/test/default.json --output json

ObjectVersionId:"Cu9ksraX_OOpbAtobdlYuNPCoJFY4N3S"

aws s3api get-object --bucket bucketname --key folder/test/default.json D:/verions/default.json --version-id Cu9ksraX_OOpbAtobdlYuNPCoJFY4N3S

答案 2 :(得分:0)

S3控制台将显示与存储桶中每个文件关联的URL。假设您已将文件公开,则可以卷曲或忘记文件。

wget https://s3.amazonaws.com/bucket_name/filename.extension

请注意,这将使文件可供拥有该网址的任何人使用。

答案 3 :(得分:-1)

AWS有几个高级s3命令; aws s3 cp,aws s3 ls,aws s3 mv,aws s3 rm和sync。您可以像使用复制源到目的地一样使用aws s3 cp

aws s3 cp s3://BUCKET-NAME/PATH/FILE.EXTENTION (LOCAL_PATH/)FILE.EXTENTION