是否可以设置一个符号链接,以便我可以用来project
指向目录home/me/project
,例如?这应该独立于文件系统中的位置。
我想使用诸如cd project
、nano project/file1.tex
等命令。
我是否必须编写指向所有目录的符号链接?
答案1
大多数 shell 都有一个CDPATH
变量,cd
可以查找要更改的目录,就像在$PATH
.
因此,如果您将符号链接添加到~/projects
目录中并执行操作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
.
答案2
您可能想使用变量而不是符号链接,例如
export project=/home/me/project
然后
cd $project
或者
vim $project/file
更新
正如 peterph 所指出的,您还可以组合这些(包括预定义变量),例如
export project=$HOME/project