是否可以将“cd”的命令完成修改为仅显示目录并忽略文件?

是否可以将“cd”的命令完成修改为仅显示目录并忽略文件?

当我在 bash 中的目录中并按 时cd Space Tab,它会显示目录中的所有内容作为可能性。 ( Show all 1000 possibilities?) 当我所在的目录有很多常规文件和相对较少的目录时,这确实很麻烦。

那么,是否可以选择自动补全cd仅包含目录?

我知道我可以通过执行以下操作来获取目录中的目录列表

ls -d */

但我不知道如何从那里开始。

我在用CentOS 6.6 最终版

答案1

只需添加

complete -d cd

在你的~/.bashrc(或其他 bash 配置文件)中。

答案2

应该在许多发行版上的典型安装中会自动发生。
如果不是,您可能丢失了该bash-completion包:

  • 乌班图:sudo apt-get install bash-completion
  • 拱:sudo pacman -S bash-completion

相关内容