使用 OSX 终端时有没有办法自动完成命令的标志?

使用 OSX 终端时有没有办法自动完成命令的标志?

我想知道在使用 OSX 终端时是否有一种方法/插件/bashrc_function 可以自动完成命令的标志。

例子
当书写grep --excl并按下时tab,它会自动完成为grep --exclude,然后再按tab一次就会自动完成为grep --exclude-dir

答案1

假设 OSX 和 Linux 上的 bash 没有太大区别......

您可以使用 bashcomplete命令在 bash 中配置自动完成选项。您必须将这些选项放在主目录中的文件中,您可以通过在终端中键入或.bashrc来访问它。如果您的主目录中没有文件,只需创建一个新的空文件并将您的调用放入其中。cd ~cd $HOME.bashrccomplete

但是,您必须手动添加特定命令的所有可能的条目,尽管可以想象您可以构建一个脚本来从页面中解析出命令的可用选项并生成包含这些选项man的调用。complete

(注意:我个人没有complete在 bash 中使用过。我主要在 tcsh 中工作,但它有一个类似的命令,当然,有自己独特的语法和实现。)

相关内容