有没有什么办法可以让 bash 更加适合 TAB?

有没有什么办法可以让 bash 更加适合 TAB?

我在 Mac 和 cygwin shell 上都使用 bash。总体而言,我对它非常满意。

然而,我的一个抱怨是它的 TAB 完成不如 Windows 命令行 TAB 完成。

例如,如果有两个文件具有相同的前缀,那么当我尝试按 TAB 键完成时,bash 只会发出哔哔声。如果我继续按 TAB 键,它最终会向我显示潜在文件的列表。

我绝对更喜欢 Windows 如何直接在命令行上循环浏览潜在文件。

有没有办法让 bash 在这方面进行类似 Windows 命令行的运行?

如果没有(我不想切换 shell),我是否遗漏了 bash 中 TAB 补全的一些功能?有没有更有效的方法来使用它?

答案1

要获得“循环执行可能的完成”行为,请将以下内容复制到 .bashrc 文件中的适当位置:

[[ $- = *i* ]] && bind TAB:menu-complete

还,bash 完成除了路径名补全之外,还提供许多其他类型的补全。例如,menu-complete 可以与 Git 的 bash-completion 模块配合使用,以补全命令名称、选项名称等。

相关内容