【小ネタ】AWS CLIのコマンド補完を設定したら楽になりました!

記事タイトルとURLをコピーする

こんにちわ!サーバーワークス日本最南端社員の久保玉井(くぼたまい)です。相変わらず体型がピチピチしております。

さて先日AWS CLIにて入力補完出来るのを知ったので小ネタです。今更感も満載ですがサクッとご紹介します。

導入環境

今回の導入環境は以下の内容です。

  • Windows11 Pro 21H2
  • WSL2
  • Ubuntu 20.04.4 LTS
  • AWS CLI Version2.5.4

ちなみにサーバーワークスではBYOD制度もあるのですが、私は貸与PCで快適にお仕事してます♪

導入手順の概要

今回の導入手順です。

  1. AWS CLIのインストール
  2. プロファイルやクレデンシャルの認証情報設定
  3. AWSコンプリーターのパス確認
  4. PATH設定
  5. コマンド補完の有効化

今回は既に1~2はまでは設定済みでしたので、3のAWSコンプリーターの作業から進めます。 なお、1~2のAWS CLIインストールについては以下記事を是非参考にしてください。

blog.serverworks.co.jp

AWSコンプリーターのパス確認

コマンドの補完を行うcompleteコマンドでAWS CLIの補完を指定しますが、それを参照するAWSコンプリーターを探します。

$ which aws_completer

PATH設定

aws_completerが/usr/local/bin配下にあることが判りました。 利用できるようにPATH設定します。

WSLのUbuntuでは標準でShellはBashを利用していますので、Bashで利用できるプロファイルファイルを探します。

$ ls -a ~/

今回は.profileが使えそうなので、そこにPATHを記述していきます。

export PATH=/usr/local/bin:$PATH

既存の$PATH変数に先程調べたAWSコンプリーターがあるパスを追加します。

コマンド補完の有効化

AWSコンプリーターのパス設定が出来たらShellを起動する際に、completeコマンドでAWSコンプリーターが利用できるように設定します。

今回は.bashrcに追記しました。

complete -C '/usr/local/bin/aws_completer' aws

.bashrcに記述後は一旦Shellを終了して再度起動しましょう。

試してみた!

設定が一通り終わりました。早速動作確認してみます。

awsコマンドの途中でTABキーを連打してみます。たとえばS3関連のコマンドが何があるか知りたい時には、S3の後にTABキーを連打!

aws s3(TAB)

S3というキーワードが含まれるコマンドが一覧で表示されます。

試しにS3の後にスペースをいれてTABキーを改めて連打してみます。

aws s3  (TAB)

すると今度はS3関連のサブコマンドが一覧で表示されました。

長いサブコマンドの途中で試してみた!

短いコマンドなら別に覚えれば入力補完を使わなくても問題ありません。

しかしAWS CLIのサブコマンドは長くて入力が辛い場合もあります。今回はec2のdescribe関連の長いサブコマンドで試してみます。

aws ec2 describe-in(TAB)

候補が一覧で出てきますね。うひょー!もうこれがステキです。

今までHELP見ながら参照していた分、この入力補完で候補出してくれるだけで神ですね。楽だわ。

まとめ

サブコマンド長くて楽になりたいと思いつつもヘルプ見ていた私としては、今回の入力補完について情報知れたのがラッキーでした。

ちなみに今回の情報はAWS公式ドキュメントでも公開されています。

docs.aws.amazon.com

以上、サーバーワークス日本最南端社員の久保玉井でした。

久保玉井純(執筆記事の一覧)

アプリケーションサービス部

サーバーワークス日本最南端社員。
最近、AWS Authorized Instructor Award 2022で表彰いただきました。引き続きわかりやすいトレーニング提供できるように頑張ります!