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の電源の落とし方でブログ記事書こっかな〜とか煽られたら悲しい

参考

コメントを残す