gdcloud CLI 自动补全

本页面介绍了如何配置和使用 gdcloud CLI 自动补全功能,该功能可让您使用 Tab 键补全部分输入的命令。此功能适用于 Bash、Zsh 和 Fish shell。 gdcloud CLI 自动补全功能会在您输入时提供命令和选项建议。当您不确定要使用哪个命令或想要使用以前从未用过的命令时,此功能会很有帮助。

启用自动补全功能

如需启用自动补全功能,您需要为终端运行命令。gdcloud CLI 自动补全功能适用于 Linux 操作系统中的 Bash、Zsh 和 Fish shell。使用以下命令确定您使用的 shell。

echo $SHELL

输出类似于 bin/$SHELL,其中 $SHELL 是 bash、zsh 或 fish。

Bash

如需在当前 shell 会话中加载补全,请运行以下命令:

source <(gdcloud completion bash)

如需为每个新会话加载补全,请运行以下命令一次:

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

Zsh

如果您的环境中尚未启用 shell 补全,您必须启用它。检查是否已启用 shell 补全。

检查 COMP_LINE 变量的值。如果 COMP_LINE 变量的值为空,则表示未启用 shell 补全。您可以通过运行以下命令来检查此值:

echo $COMP_LINE

尝试将 shell 补全与命令搭配使用。如果您尝试将 shell 补全与命令搭配使用,但它不起作用,则表示未启用 shell 补全。例如,尝试输入以下命令并按 Tab。如果已启用 shell 补全,您必须看到 ls 命令的可能补全列表。

ls

检查 compgen -c 命令的输出。如果 compgen -c 命令的输出不包含任何命令,则表示未启用 shell 补全。您可以运行以下命令来查看 compgen -c 命令的输出。如果已启用 shell 补全,则该命令的输出应包含具有补全功能的命令列表。

compgen -c

如果您不确定环境中是否已启用 shell 补全,请查看 shell 的文档。 如果您的环境中未启用 shell 补全,请执行以下命令以启用它:

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

如需在当前 shell 会话中加载补全,请运行以下命令:

source <(gdcloud completion zsh); compdef _gdcloud gdcloud

如需为每个会话加载补全,请运行以下命令一次:

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

您必须启动一个新 shell,此设置才能生效。

Fish

如需在当前 shell 会话中加载补全,请运行以下命令:

gdcloud completion fish | source

如需为每个会话加载补全,请运行以下命令:

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

您必须启动一个新 shell,此设置才能生效。

使用自动补全功能

如需使用 gdcloud CLI 自动补全功能,请输入要使用的命令的前几个字符,然后按 Tab 键。如果只有一个可能的补全,系统会自动将其插入到命令行中。如果命令未自动填充,则表示有多个可能的补全,您必须再次按 Tab 键才能查看所有可能的命令。

自动补全示例

部分输入命令,然后按 Tab 以自动补全命令:

gdcloud con <TAB>

按一次 Tab 后的完整命令:

gdcloud config

部分输入命令,然后按两次 Tab 以查看所有可能的命令列表:

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