pip 有自动完成功能吗?

Yur*_*rij 9 python bash auto-completion pip

Pip 有一长串命令。有没有办法Tab在控制台(Bash)中使用自动完成功能?

mur*_*uru 33

相对较新的pip带有内置功能创建的bash,zsh的或鱼完成助手:

$ pip help completion

Usage:   pip completion [options]

Description:
  A helper command to be used for command completion.

Completion Options:
  -b, --bash                  Emit completion code for bash
  -z, --zsh                   Emit completion code for zsh
  -f, --fish                  Emit completion code for fish
Run Code Online (Sandbox Code Playgroud)

你可以像这样使用它:

pip completion --bash >> ~/.bashrc
Run Code Online (Sandbox Code Playgroud)

然后启动一个新的shell 或者source ~/.bashrc让它生效。


Mel*_*ius 6

更新:不要忘记查看muru 的答案,这可能会提供更直接的解决方案。

pipBash的自动完成插件可以在https://github.com/ekalinin/pip-bash-completion找到。

您可以将其下载为 ZIP 文件或使用 Git 进行安装:

git clone https://github.com/ekalinin/pip-bash-completion.git
sudo cp ./pip-bash-completion/pip /etc/bash_completion.d/
. /etc/bash_completion.d/pip  # to enable in the current shell, next time should load automatically
Run Code Online (Sandbox Code Playgroud)