LinuxGem
我们一起去探寻 Linux 的宝藏吧!
devtodo —— 在终端中运行的 todo 管理工具

使用 CDPATH 变量在目录间跳转

galeki posted @ 2008年11月25日 20:46 in Bash 和它的朋友们 with tags cdpath bash , 1394 阅读
whohas -- 查询软件包在各个发行版仓库的情况

PATH 环境变量大家都熟悉,当你敲入命令,shell 按照 PATH 中的目录顺序来查找可执行文件。

CDPATH 和 PATH 的用法完全相同,只不过 CDPATH 控制的是执行 cd 目录跳转时的查找顺序。

假如在 ~/works 下,有很多项目的文件夹:

works
  |__ red
  |__ blue
  |__ yellow
  |__ green
  |__ dark
  |__   ...

这样就可以设置 CDPATH 为:

CDPATH=:~/works
export CDPATH

这样,在任何当前目录下,都可以直接 cd red 进入 ~/works/red 文件夹了。

CDPATH 和 PATH 一样,也是用冒号来分隔不同的目录,并且按照先后顺序查找,唯一的区别就是,CDPATH 的第一字符就是一个冒号,是一个表示当前目录的空项,因为 cd 总是应该优先进入当前文件夹中的目录,所以如果当前目录下有个 red 文件夹,那么 cd red 就不会进入到 ~/works/red 下了。

1
回复
chisiyuan 说:
2008年12月28日 00:17

http://bashscripts.org/viewtopic.php?t=639
我用bash写了function,也是方便cd命令的使用,相当于给当前目录加入书签,以后不管在哪个目录可以直接“cdk 书签名”进入。


* 登录
*

simple_captcha.jpg
(输入验证码)