web-dev-qa-db-ja.com

AWS Webコンソールからs3 uriを取得する方法はありますか?

S3からa directoryをダウンロードしたい。
a fileが必要な場合、s3管理コンソール(aws Webコンソール)でダウンロードできますが、a directory、次のようにaws-cliを使用する必要があります。

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

私の質問は次のとおりです。s3uri(s3://mybucket/mydirectory/)s3管理コンソールから?
URLは使用可能ですが、aws-cliで必要なs3 URIとは少し異なります。 uriを取得するためのメニューが見つかりませんでした。

前もって感謝します!

31
keisuke

(自己回答)

そのような方法はなかったようなので、私は 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/

内部的に。

8
keisuke

いいえ、コンソールには表示されません。ただし、それは単純です:

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

ディレクトリは、実際にはkeyの一部です。たとえば、imagesディレクトリに格納されているfoo.jpgは、実際にはimages/foo.jpgというキー(ファイル名)を持ちます。

41
John Rotenstein

キーを選択してをクリックすると、コンソールで適切なkey/fileのS3-URIを取得できます。 Copy path ボタンを押すと、ファイルのs3-URIがクリップボードに配置されます。

ただし、ディレクトリ自体はキーではなく、単にキープレフィックスであるため、これは機能しません。

2
Antti Haapala

コンソールに表示されるhttps://s3.us-east-2.amazonaws.com/my-bucket-name/filenameなどのS3 URLをS3 URIに変換するには、https://s3.us-east-2.amazonaws.com/部分を削除し、次のようにs3://に置き換えます。

s3://my-bucket-name/filename
0
enharmonic