AWS CLIを使えばできる!
AWSマネジメントコンソールのS3画面からは、なんと複数ファイルの一括ダウンロードができません。
Googleドライブのように複数選択した場合は、ZIPに固めてダウンロードしてくれれば便利なのですが、そもそもの用途が違うので仕方ないですかね。
一つひとつダウンロードすることは可能ですが、ファイル数が大量の場合はポチポチとマウスで操作してダウンロードしていると日が暮れてしまいます。
そんな時は、AWS CLIを使うことで、まとめて一括ダウンロードが可能です。
AWS CLIが必要ですので、インストールと設定が済んでいない方はこちらご覧ください。
aws s3 cpコマンド
こんな感じで実行すると、指定したバケットの中身をすべてローカルに一括でダウンロードすることができます。フォルダ構造もそのまま再現してくれます。
構文
aws s3 cp s3://コピー元バケット名 パソコンのコピー先フォルダ --recursive
以下、実際に動かしてみたものですが、これは便利です!
battan-image-boxバケット内のファイルをすべてパソコンにダウンロードしてみました。
Microsoft Windows [Version 10.0.19042.1110]
(c) Microsoft Corporation. All rights reserved.
c:\tmp> aws s3 cp s3://battan-image-box ./battan-image-box --recursive
download: s3://battan-image-box/input/P0030622.JPG to input\P0030622.JPG
download: s3://battan-image-box/thumbnails/DSC_0073.jpg to thumbnails\DSC_0073.jpg
download: s3://battan-image-box/input/P0030524.JPG to input\P0030524.JPG
download: s3://battan-image-box/input/dir1/IMG_3650.JPG to input\dir1\IMG_3650.JPG
download: s3://battan-image-box/thumbnails/P0030306.JPG to thumbnails\P0030306.JPG
C:\tmp>dir
ドライブ C のボリューム ラベルがありません。
ボリューム シリアル番号は C64B-DF27 です
C:\tmp のディレクトリ
2021/08/02 11:36 <DIR> .
2021/08/02 11:36 <DIR> ..
2021/08/02 11:36 <DIR> battan-image-box
0 個のファイル 0 バイト
3 個のディレクトリ 4,707,155,968 バイトの空き領域
C:\tmp>
接続先AWSアカウントの簡単な切替方法
接続先のプロフィールを作成しておくとコマンド実行時に切り替えることができて便利です。
例えば、このような感じで接続先を切り替えてダウンロードすることができます。プロフィールの設定はこちらの記事の最後のオマケ欄をご覧ください。
aws s3 cp s3://bucket-name c:\download --recursive --profile user1
コメント