aws-shell再入門
使ってるPython環境にaws-shellをインストール
pip install aws-shell
違うPython環境に入ると起動できないので注意(jupyter-notebookと同じ)
すでにいくつかのprofileがあるのが前提です(そうじゃない人はaws-cliをご参照)
credentialsを覗いてみます
vi ~/.aws/credentials
こんな感じでdefaultとそれぞれのprofileが並んでるはず
[default]
aws_access_key_id = xxx
aws_secret_access_key = xxx
[profile1]
aws_access_key_id = xxx
aws_secret_access_key = xxx
[profile2]
aws_access_key_id = xxx
aws_secret_access_key = xxx
–profileオプションで指定できます
aws-shell --profile profile1
これでaws shellに入ることができました。あとはaws cliのコマンドを直接打てます。コマンド補完もしてくれるので記憶が曖昧でも安心。
なお、以降aws shell内での操作はaws>
を頭につけます。
S3探索
今回はS3のファイルをよく見てみようという需要があって、aws-shellを復習してます。
- ゴール:検索とカウント
一個ずつ確認します。
バケットをリストアップ
作成日時と合わせてリストアップしてくれる
aws> s3 ls
2019-06-07 16:33:16 bucketA
2019-06-11 15:43:59 bucketB
2018-12-25 17:22:44 bucketC
オブジェクトをリストアップ
中身を覗きたいバケットを指定してlsコマンド
aws> s3 ls bucketA/
2019-06-12 20:36:09 431970 fileA.html
2019-06-12 21:44:09 408073 fileB.html
2019-06-12 20:35:14 661680 fileC.html
...
検索
s3 lsコマンドはパイプでgrepと繋げます
aws> s3 ls bucketA/ | grep piyo
2019-06-12 20:36:09 431970 piyoA.txt
2019-06-12 21:44:09 408073 fuga-piyo.html
2019-06-12 20:35:14 661680 piyopiyo.jpg
...
もちろん、バケットに対しても検索かけられます。
-cオプションをつければカウントできるね
aws> s3 ls bucketA/ | grep -c piyo
201
検索かけずにバケットにいくつファイルが入ってるかカウントしたいときはwcで行数カウント
aws> s3 ls bucketA/ | wc -l
6159
所感
最近しょうもない内容をQiitaに投稿すると苦言を呈されるみたいですが、自分のブログなら大丈夫でしょうか
ここの記事の9割は自分の言葉でメモしとくと後で検索しやすいから残してるだけで、ネットに転がってる知識の再編集です
検索汚染と言われたら悲しいけど反論できない
iPhoneの電源の落とし方でブログ記事書こっかな〜とか煽られたら悲しい