*いしのなかにいる*

oops ! I am in rock !

S3バケットにアップロードしたファイルを一括ダウンロードする方法

f:id:malor:20171004094925p:plain:w600

S3に置いてあるファイルを一括でタウンロードしたい

既存の Wordpress サイトを Local by Flywheel に移行するため、S3に上げたファイルを一括ダウンロードする必要が出てきたのですが、、

S3のファイルってAWSコンソールからだと一つずつしかダウンロードできないのですね。。

リソースが少ない場合はそれで問題ないのですが、私は画像ファイルやらなんやらをたくさん置いていたので大問題。

結論、AWS-CLIを使えば可能!

google先生に聞いた結果、AWS-CLI(AWS Command Line Interface )というものを使えばできる!ということがわかりました。

AWS-CLIってなんじゃい!という方はこちらをご参照ください。

やり方がわかってしまえばあとは簡単。

$ aws s3 cp s3://S3バケット名/ ダウンロード先パス --recursive

はい、コマンド一発!

一応コマンドの補足をしておきますと、

  • aws s3: S3を操作するAWS-CLI のコマンド名
  • cp: コピーして持ってくるということ(S3のファイルはそのまんま)他にmv, rm, ls などがある
  • S3バケット名: 名前の通りS3のバケット名
  • ダウンロード先パス: ローカルの保存先(例: ~/Downloads)
  • --recursive: バケット内のフォルダを再帰的に辿ってくれる。要はバケットの中身全部持ってくるということ

感想

AWS-CLIはすごい便利!
どんどんコマンドを覚えていこうと思いました。