Hầu hết các shell có một CDPATHbiến cdcó thể tìm kiếm các thư mục để thay đổi theo cùng cách mà các tệp thực thi được tìm kiếm $PATH.
Vì vậy, nếu bạn thêm liên kết tượng trưng của mình vào một ~/projectsthư mục và thực hiện CDPATH=~/projects, bạn sẽ có thể thực hiện cd foođể đi vào~/projects/foo
Với zsh, nếu $varchứa một đường dẫn bạn có thể làm cd ~varvới cdđường dẫn đó. Phần hữu ích của điều đó là khi lời nhắc của bạn có %~sau đó phản ánh nó trong lời nhắc của bạn:
$ proj1=/usr/local proj2=/etc/apache2
$ PS1='%~$ '
$ cd ~proj1
~proj1$ cd ~proj2/sites-enabled
~proj2/sites-enabled$
Với setopt cdablevars, bạn cũng có thể làm cd proj1thay vì cd ~proj1.
project=$HOME/project...