結論
-
設定ファイルを複数作成します。
.s3cfg-account1 .s3cfg-account2
-
エイリアスを設定します。
~/.bashrcalias s31='s3cmd -c ~/.s3cfg-account1' alias s32='s3cmd -c ~/.s3cfg-account2'
設定は各自利用している設定ファイルを変更して下さい。zshの人は
~/.zshrc
等。 -
後は設定したエイリアスで複数アカウントのs3へアクセスしましょう。
$ s31 ls 2014-12-09 11:05 s3://bucket1 2015-02-03 12:16 s3://bucket2 $ s32 ls 2015-01-07 10:00 s3://bucket3 2014-11-25 09:04 s3://bucket4
詳細
S3cmdとは主にAmazon S3をCLIから利用するのに便利なコマンドラインツールです。
$ s3cmd ls
とするとs3のbucket一覧が見れたりします。
$ s3cmd --configure
でAWSのAccessKeyとSecretAccessKeyを設定すれば~/.s3cfg
が生成されます。
どのアカウントか分かるようにリネームして必要なだけ.s3cfgファイルを作成すれば良いです。
Tips
s3cmd --configure
で以下のエラーが出る時の対策
ERROR: Test failed: GPG program not found
-
GPGをインストール
$ brew install gpg
-
GPGのpathを取得
$ which gpg /usr/local/bin/gpg
-
GPGのpathを
s3cmd --configure
で入力$ s3cmd --configure Path to GPG program [None]: /usr/local/bin/gpg