cliでs3を操作(バケットの作成やアップロード、ダウンロードなど)できるように設定をしていくつか実行してみます。
#s3とは
s3とはamazon web serviceが提供してくれるオンラインストレージである。
dropboxに似ているものです。
#前提
- Homebrewをインストールしていること → こちらを参考にしました
- awsのアカウントを作成していること
#まず、awscliをインストールする
$ brew install awscli
を実行することでcliからawsを操作できるようになります。
#次に、awsに接続する
$ aws configure
AWS Access Key ID [None]: 'アクセスキー'
AWS Secret Access Key [None]: 'シークレットキー'
Default region name [None]: '設定したregion(東京だと"ap-northeast-1")'
Default output format [None]: json
とすることでawsへの接続ができるようになります。
ここまできたらcliでs3を操作できるようになります。いくつかやってみます。
#いくつか操作をしてみよう
###バケットを作る
s3ではバケットという大元を作らないといけません。こちらをcliで作ってみます。
$ aws s3 mb s3://(バケット名)
とすることでバケットを作ることができます。やってみると
$ aws s3 mb s3://trainingtomosuke
make_bucket: trainingtomosuke
となり、trainingtomosuke
というバケットができました。
###アップロードをする
バケットに以下のテキストをアップロードしたいとする。
'test.txt'
test,test,test,test,test
このとき、このファイルがあるところのディレクトリに移って以下を実行します。
$ aws s3 cp (アップロードしたいファイル) s3://(バケット名)
では、先ほど作ったバケットにtest.txt
をアップロードしたいと思います。
$ aws s3 cp test.txt s3://trainingtomosuke
upload: ./test.txt to s3://trainingtomosuke/test.txt
となり、アップロードできました。
確認のためにaws s3 ls s3://trainingtomosuke/test.txt
で見てみると
$ aws s3 ls s3://trainingtomosuke
2020-10-19 20:39:59 29 test.txt
と表示されており確かに、アップロードができています。
#ダウンロードしてみる
$ aws s3 cp (アップロードしたいファイル) s3://(バケット名)
のところを
$ aws s3 cp s3://(バケット名)/(ダウンロードしたいファイルのパス) (ダウンロードしたいディレクトリ)
にするとダウンロードできます。大体、わかってきたと思いますがaws s3
と頭につけて実行すればs3の操作ができます。
$ aws s3 cp s3://trainingtomosuke/test.txt ./
download: s3://trainingtomosuke/test.txt to ./test.txt
となってダウンロードできました。
#まとめ
aws s3 [options] [ファイルまたはバケット] [ファイルまたはバケット]
でs3の基本的な操作ができます。
皆さんも練習がてらにcliを触ってみてください。