我正在使用终端版本 2.2.3 (303.2)。
问题是,当我尝试从根目录开始更改目录时,我必须双击某些目录才能获得尾随斜杠。
例如,我开始输入
cd /et
Tab
它给了我:
/etc
然后我必须再次按下 Tab 键才能得到所需的尾部斜杠
/etc/
然后,最后,我可以Tab使用单击选项卡来访问所有其他目录。
我该如何解决这个问题?我太怀念 Ubuntu 的 bash 了。
答案1
这是因为,在 OS X 上,/etc
有一个符号链接:
$ l /etc
lrwxr-xr-x 1 root 11 2012-09-22 09:02 /etc -> private/etc/
那是,/etc
是一个文件,而不是一个目录。
如果您尝试一个真实的目录,例如/usr
,您将看到预期的行为:
cd /us
TAB
cd /usr/
您可以使用以下命令强制 Bash 将符号链接目录视为目录:
bind 'set mark-symlinked-directories on'
将其添加到您的.bashrc
源中(即从中读取和执行命令),如下所示:
. ~/.bashrc
或重新打开终端。
答案2
不幸的是,目前对我来说最简单的方法是从切换/bin/bash
到bin/zsh
(终端首选项- Shell 打开)。
不过遗憾的是,我无法轻松地使用 bash“从盒子里”实现所需的行为。
我还必须导出我的别名等等......