s3cp - ディレクトリ/ファイルをS3にアップロード
Amazon S3はとても便利なストレージです。サーバ系のファイルはもちろんのこと、個人のファイルも不要であればとりあえずS3にアップロードしてしまったり、HTTP公開ができるのでWebサイトのホスティングにも使えます。 そんなAmazon S3へのファイルアップロードに便利なツールがs3cpです。ファイルやディレクトリをまとめて一気にアップロードできます。
s3cpの使い方
s3cpはGoで作られており、バイナリがダウンロードできます。なお今のところWindowsには対応していません。
使い方としてはまず認証情報の登録があります。環境変数や設定ファイルを用いて行います。
export AWS_ACCESS_KEY_ID="hoge"
export AWS_SECRET_ACCESS_KEY="fuga"
ファイルのアップロードは次のように行います。ファイル、バケット、ディレクトリパスを指定します。
$ s3cp [options] < ローカルのファイルパス> < バケット名> < アップロード先S3のディレクトリパス>
ディレクトリも同様です。
$ s3cp -r [options] < ローカルのディレクトリパス> < バケット名> <s3 のディレクトリパス>
実際に行った感じは以下の通りです。
現状はすべてprivateでアップロードされます。ある意味安心かも知れません。20MB以上のファイルは分割し、マルチパートアップロードを行います。さらにレジュームや複数ファイルの同時アップロードにも対応しているので、巨大なファイルをアップロードするのに向いています。
s3cpはGo製のソフトウェア(ソースコードは公開されていますがライセンスは明記されていません)です。