"Mac で aws-cli を利用する際にコマンド補完ができるように設定する。"

はじめに

普段 Mac で AWS CLI をよく利用するのですが、いちいち全部手入力は大変ですよね。。。 そんな時、コマンド補完機能を使えば、Tab キーを使って補完できるのでとても便利です。 この機能は AWS CLI インストールしただけでは自動的有効とはならないため、手動で設定する必要があります。

http://docs.aws.amazon.com/ja_jp/cli/latest/userguide/cli-command-completion.html


# はじめに ## シェルの確認 まずは Mac で利用しているシェルを確認します。
$ echo $SHELL
/bin/bash
$ ps
  PID TTY           TIME CMD
22320 ttys000    0:00.23 -bash
$ which aws_completer
/Users/kohei/.pyenv/shims/aws_completer

# 保管設定 今回は bash であったため、その場合の設定です。
$ complete -C '/usr/local/bin/aws_completer' aws

# 確認 実際に補完ができているか確認します。
$ aws s
s3                  sagemaker-runtime   servicecatalog      shield              sns                 stepfunctions       support 
s3api               sdb                 servicediscovery    sms                 sqs                 storagegateway      swf 
sagemaker           serverlessrepo      ses                 snowball            ssm                 sts

ちょっとレスポンスに時間かかりましたが、ちゃんと補完できました。


# おわりに aws-cliはバージョンアップが頻繁に行われるので、気がつくと利用してるバージョンが古いことが多々あります。 バージョンアップしたときなど、補完機能を使うことでどんなawsコマンドがあるかを確認できるので便利です。