可能重复:
Mac OS 中 Bash 命令的补全
我刚刚从 Linux 转到 Mac,我遇到的一个问题是 Tab 键补全只有 1 级深度,我不确定如何纠正这个问题。
让我举例解释一下 - 当我在 ubuntu 上使用 git 时,我会开始输入
$ git
然后按 Tab 键,shell 就会完成命令或显示我输入的字母可用的选项。我的 Mac 上也会出现这种情况(1 级)。但是,当我继续输入命令的下一部分时
$ git commit
并按下 Tab 键,Mac 终端不会像在 Linux 中那样完成下一个子命令(对于 git)。其他支持此多级命令完成的程序也是如此。我怀疑这可能是 readline 库的问题,但我不确定应该安装哪一个。
答案1
下载bash_completion并从你的 中获取它.bashrc
。然后将contrib/completion/git-completion.bash
git 分发版放入 中bash_completion.d
。
或者你也可以通过以下方式安装麦金塔。
答案2
对于 git,编译时有一个选项可用于支持完成。
如果你使用 port 安装 Git(我推荐),你可以用这个命令重新安装 git
sudo port install git-core +svn+bash_completion+doc
这将安装带有 bash 补全、git-svn 支持和文档的 git