aws cliを使って、s3にファイルを一括アップロードするときのコマンド

投稿者: | 2019年3月28日

サーバ上のファイルをs3に移動させたいと考えて、aws cliを使ったときのコマンドについてまとめる。

 

【前提条件】

cliセットアップ時に登録したaccess key IDを持つユーザが対象のs3 bucketにアクセスできるようになっていること。

 

【コマンド】

●ファイル名が一致するもののみアップロードしたい場合

aws s3 cp (アップロードしたいファイルがあるディレクトリパス) s3://(アップロード先のbucket)/ --recursive --exclude "*" --include "*(アップロードするファイル名に含まれる文字列)*"
  • —recursive は再帰的に処理を行うという意味。下位のディレクトリも対象にするのかどうかはまだ未検証。
  • —exclude は指定したファイルは対象外とする。
  • —include は指定したファイルを対象とする。
  • excludeとincludeの順番で、優先度が変わるのかも?これの検証もしていない。

ex)
aws s3 sync /tmp/user s3://s3bucketname/filefolder/ –recursive –exclude “*” –include “*201806*”
→ /tmp/user 配下の「201806」を名前に含むファイルを対象として、s3bucketnameバケットのfilefolder配下にアップロードする。

 

●特定のフォルダ配下を全て再帰的にアップロードしたい場合

aws s3 sync (アップロードしたいファイルがあるディレクトリパス)/ s3://(アップロード先のbucket)/(ファイルアップロード先のディレクトリ)/

ex)
aws s3 sync user/ s3://s3bucketname/user/
→ 相対パスで user 配下のファイルをs3bucketnameバケットのuser 配下にアップロードする。

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)