Answers:
大多数shell都有一个CDPATH变量,该变量cd可以查找目录以与搜索可执行文件相同的方式进行更改$PATH。
因此,如果将符号链接添加到~/projects目录中并执行do CDPATH=~/projects,就cd foo可以进入~/projects/foo
有了zsh,如果$var包含你可以做一个路径cd ~var,以cd该路径。有用的部分是当您的提示中包含以下%~内容时:
$ proj1=/usr/local proj2=/etc/apache2
$ PS1='%~$ '
$ cd ~proj1
~proj1$ cd ~proj2/sites-enabled
~proj2/sites-enabled$
使用setopt cdablevars,也可以cd proj1代替cd ~proj1。
您可能想使用变量而不是符号链接,例如
export project=/home/me/project
然后
cd $project
要么
vim $project/file
更新
正如peterph所指出的,您也可以将它们结合起来(包括预定义变量),例如
export project=$HOME/project
~/project。
zsh,你也可以做setopt cdablevars,然后cd project
zsh您也许可以将其添加为单独的答案?
project=$HOME/project...