有没有办法从aws web控制台获得s3 uri?

时间:2016-11-15 03:47:54

标签: amazon-web-services amazon-s3 aws-cli

我想从我的s3下载目录 当我需要文件时,s3管理控制台(aws web控制台)允许我下载它,但是当目录时,我必须使用aws-cli,如:

$ aws s3 cp s3://mybucket/mydirectory/ . --recursive

我的问题是:有没有办法从s3管理控制台获取s3 uri(s3://mybucket/mydirectory/)?
它的URL可用,但它与aws-cli所需的s3 URI略有不同。我找不到任何菜单来获取uri。

提前谢谢!

5 个答案:

答案 0 :(得分:37)

不,它不会显示在控制台中。但是,它只是:

s3://<bucket-name>/<key>

目录实际上是key的一部分。例如,存储在foo.jpg目录中的images实际上具有images/foo.jpg的密钥(文件名)。

答案 1 :(得分:7)

(个体回答)

因为似乎没有这种方式,我创建了one

pip install aws-s3-url2uri

安装后命令aws_s3_url2uri将可用。

此命令在内部将Web控制台URL转换为S3 URI,因此可以使用URL和URI以及本地路径:

aws_s3_url2uri ls "https://console.aws.amazon.com/s3/home?region=<regionname>#&bucket=mybucket&prefix=mydir/mydir2/"

呼叫

aws s3 ls s3://mybucket/mydir/mydir2/

内部。

答案 2 :(得分:1)

通过选择密钥并单击 Copy path <,可以在控制台中获取适当的 key / 文件的S3-URI。 / kbd>按钮,这会将文件的s3-URI放置在剪贴板上。

但是,目录本身并不是键,而只是键前缀,因此这不适用于它们。

答案 3 :(得分:1)

您可以通过在控制台中选择文件来从控制台获取值。在概述选项卡上选择复制路径,以将S3://链接复制到对象。

答案 4 :(得分:0)

要将控制台中显示的S3 URL(例如https://s3.us-east-2.amazonaws.com/my-bucket-name/filename转换为S3 URI,请删除https://s3.us-east-2.amazonaws.com/部分并用s3://替换,如下所示:

s3://my-bucket-name/filename