LoginSignup
7
2

More than 3 years have passed since last update.

AWS CLI v2のコマンド補完を有効にする

Posted at

TL;DR

  • AWS CLI v2で、シェル補完が有効なようなので設定したい
  • aws_completerを使ってシェル補完を有効にするが、継続的に有効にするには~/.bashrc等に設定する

ちなみに、Amazon Linux上ではデフォルトで有効化されているようです。

Amazon Linux

コマンド補完は自動的に設定され、Amazon Linux を実行する Amazon EC2 インスタンス上でデフォルトで有効化されます。

コマンド補完

AWS CLI v2をインストールする

最初に、AWS CLI v2をインストールしましょう。

AWS CLI バージョン 2 のインストール

今回の環境はCentOS 7なので、Linux向けのインストールを行います。

$ uname -srvmpio
Linux 3.10.0-957.12.2.el7.x86_64 #1 SMP Tue May 14 21:24:32 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux


$ cat /etc/redhat-release 
CentOS Linux release 7.8.2003 (Core)

Linux での AWS CLI バージョン 2 のインストール

$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
$ unzip awscliv2.zip
$ sudo ./aws/install

これで、AWS CLI v2がインストールされました。

$ aws --version
aws-cli/2.0.16 Python/3.7.3 Linux/3.10.0-1127.8.2.el7.x86_64 botocore/2.0.0dev20

現時点のバージョンは、2.0.16ですね。

コマンド補完を設定する

では、AWS CLI v2のコマンド補完を設定してみましょう。

コマンド補完

Amazon Web Services ブログ / AWS CLI v2 が一般利用可能となりました

ドキュメントを見ていると、aws_completerPATHに追加するように書かれています。が、pipを使った方法など、そもそも内容がv1寄りのような…?

コマンド補完の設定

aws_completerコマンドを探してみましょう。

AWS CLI v2のデフォルトのインストール方法では、/usr/local/binに配置されるようです。

$ ls -l /usr/local/bin
合計 0
lrwxrwxrwx. 1 root root 37  5月 24 05:40 aws -> /usr/local/aws-cli/v2/current/bin/aws
lrwxrwxrwx. 1 root root 47  5月 24 05:40 aws_completer -> /usr/local/aws-cli/v2/current/bin/aws_completer

では、aws_completerを使ってシェル補完を設定します。bashの場合は、こちらです。

$ complete -C aws_completer aws

zshtcshの場合は、ドキュメントを参照してください。

シェル補完が使えるようになったか、確認してみましょう。

$ aws ec
ec2                   ec2-instance-connect  ecr                   ecs 

大丈夫そうです。

シェルにログインする際にコマンド補完を有効にする

bashの場合は、$HOME/.bash_profileに追加しましょう。

$ echo 'complete -C aws_completer aws' >> $HOME/.bash_profile

これで、シェルを起動する度にコマンド補完が有効になります。

7
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
2