gdcloud CLI の自動補完

このページでは、Tab キーを使用して部分的に入力されたコマンドを補完できる gdcloud CLI のオートコンプリート機能を構成して使用する方法について説明します。この機能は、Bash、Zsh、Fish シェルで使用できます。 gdcloud CLI のオートコンプリートは、入力時にコマンドとオプションの候補を表示する機能です。使用するコマンドがわからない場合や、これまで使用したことのないコマンドを使用する場合に便利です。

オートコンプリートを有効にする

オートコンプリート機能を有効にするには、ターミナルでコマンドを実行する必要があります。gdcloud CLI のオートコンプリート機能は、Linux オペレーティング システムの Bash、Zsh、Fish シェルで使用できます。使用しているシェルを確認するには、次のコマンドを使用します。

echo $SHELL

出力は bin/$SHELL のようになります。ここで、$SHELL は bash、zsh、fish のいずれかです。

Bash

現在のシェル セッションで補完を読み込むには:

source <(gdcloud completion bash)

新しいセッションごとに補完を読み込むには、次のコマンドを 1 回実行します。

gdcloud completion bash > gdcloud-completion.bash
sudo cp gdcloud-completion.bash /etc/bash_completion.d/

Zsh

環境でシェル補完がまだ有効になっていない場合は、有効にする必要があります。シェル補完が有効になっているかどうかを確認します。

COMP_LINE 変数の値を確認します。COMP_LINE 変数の値が空の場合、シェル補完は有効になっていません。この値を確認するには、次のコマンドを実行します。

echo $COMP_LINE

コマンドでシェル補完を使用してみます。コマンドでシェル補完を使用しようとしても機能しない場合、シェル補完は有効になっていません。たとえば、次のコマンドを入力してTab キーを押します。シェル補完が有効になっている場合は、ls コマンドの補完候補のリストが表示されます。

ls

compgen -c コマンドの出力を確認します。compgen -c コマンドの出力にコマンドが含まれていない場合、シェル補完は有効になっていません。次のコマンドを実行すると、compgen -c コマンドの出力が表示されます。シェル補完が有効になっている場合、コマンドの出力には、補完関数を持つコマンドのリストが含まれます。

compgen -c

環境でシェル補完が有効になっているかどうかわからない場合は、シェルのドキュメントを確認してください。 環境でシェル補完が有効になっていない場合は、次のコマンドを実行して有効にします。

echo "autoload -U compinit; compinit" >> ~/.zshrc

現在のシェル セッションで補完を読み込むには:

source <(gdcloud completion zsh); compdef _gdcloud gdcloud

セッションごとに補完を読み込むには、1 回実行します。

gdcloud completion zsh > "${fpath[1]}/_gdcloud"

この設定を有効にするには、新しいシェルを起動する必要があります。

現在のシェル セッションで補完を読み込むには:

gdcloud completion fish | source

セッションごとに補完を読み込むには、次のように実行します。

gdcloud completion fish > ~/.config/fish/completions/gdcloud.fish

この設定を有効にするには、新しいシェルを起動する必要があります。

オートコンプリートを使用する

gdcloud CLI オートコンプリートを使用するには、使用するコマンドの最初の数文字を入力して Tab キーを押します。補完候補が 1 つしかない場合は、コマンドラインに自動的に挿入されます。コマンドが自動入力されない場合は、補完候補が複数あるため、Tabキーをもう一度押して、使用可能なコマンドをすべて表示する必要があります。

オートコンプリートの例

コマンドの一部を入力して Tab キーを押すと、コマンドが自動補完されます。

gdcloud con <TAB>

Tab キーを 1 回押すと、コマンドが補完されます。

gdcloud config

コマンドの一部を入力して Tab キーを 2 回押すと、使用可能なコマンドのリストが表示されます。

gdcloud clusters <TAB> <TAB>
describe get-credentials list
gdcloud clusters