修改 cd tab 自动补全,使其显示如 ls -la

Modify cd tab autocompletion to show like ls -la

文件结构如下:

|-/
|-foo
|--bar1
|--bar2
|--bar3.txt

处于 / 级别并键入 cd f 后跟 Tab+Tab 我看到了:

~ / cd foo
/bar1 /bar2

因为我使用 oh-my-zsh,所以我可以使用 和 select 在所有选项之间导航一个目录。有没有办法修改我的 bash 配置文件,使其产生类似于我从 ls -l 获得的 "list-like" 输出,所以我将所有选项垂直而不是水平列出?

预期(在 cd f + Tab+Tab 之后):

~ / cd foo/
drwxr-xr-x 22 admin home 748 Feb 3 15:19 bar1
drwxr-xr-x 16 admin home 544 Feb 3 15:19 bar2

提前致谢。

您可以使用 file-list 完成样式启用此行为。只需将以下行添加到您的 ~/.zshrc:

zstyle ':completion:*' file-list all

对于 Oh-My-Zsh,可能需要在采购 oh-my-zsh.sh 之后添加该行。或者,您可以将扩展名为 .zsh 的文件和上面的行作为内容放入 ~/.oh-my-zsh/custom.