Linux 中 Tab 键完成配置文件设置

Linux 中 Tab 键完成配置文件设置

在 SLES 10.1 中,当您按下 Tab 键而不在目录中输入任何内容时,您会得到目录列表。这个设置是什么,以便我可以在 CentOS 5.4 中设置它?

答案1

对于 bash:

设置禁用完成关闭

答案2

您需要安装 bash-completion 模块。一些发行版将它们与 bash 捆绑在一起,其他发行版则将它们单独打包。安装后,您需要激活它们。在 Ubuntu/Debian 中,这是通过/etc/bash_completion在您的 .bash{rc,_profile} 中进行采购来完成的。

对于 CentOS 5,该过程记录如下:

http://thedaneshproject.com/posts/bash-completion-on-centos-5/

答案3

我猜你指的是 SUSE 列出当前目录中的所有内容,而不是显示路径中的所有可执行命令,因为 bash 默认打开了 Tab 完成功能,并且我从未听说过有发行版将其作为标准禁用。

Bash 具有 complete 内置命令,允许您自定义 tab 补全。有多个项目为许多常用工具提供了一些不错的补全功能。SUSE 可能使用了此功能。您应该能够通过查看 bash 启动文件(您可以在非常完整的(读作:长的)手册页)。其中一个会提供一组完整的函数,其中一个会执行您想要的操作。

我确实要问一下使用 Tab 键完成当前目录内容是否明智。我想向您显示 3-4000 个程序的列表并不是最有用的功能。如果您的命令行中已经有了某些内容,那么它会使用 Tab 键完成路径上的可执行文件还是完成当前目录中的某些内容?

相关内容