我一直在尝试将CDPATH变量配置为包含一些具有长绝对路径的目录,放在外部驱动器上,但是尽管告诉我目录已包含在内,但是' cd'命令不以任何方式改变目录
我使用了以下命令:
$ export CDPATH=/media/user/01/workspace/rubystudies
然后
$ echo $CDPATH
,它返回给我以下内容:
/media/user/01/workspace/rubystudies
但是,当我尝试cd rubystudies
或cd /rubystudies
时,它会说出来
bash: cd: /rubystudies: No such file or directory
我究竟做错了什么?这是我在配置CDPATH后使用cd
的方式吗?
答案 0 :(得分:0)
以下是CDPATH
设置的文档:
cd命令的搜索路径。这是一个冒号分开的 shell查找目标的目录列表 cd命令指定的目录。样本值为"。:〜:/ usr"。
因此,CDPATH
设置不仅仅是以冒号分隔的书签列表。它更类似于PATH
设置,因为它在中找到了传递给cd
命令的目录的每个列出目录中的。
如果您想在此处正确使用此设置,我会尝试:
export CDPATH='.:/media/user/01/workspace'
...这将允许您根据需要执行cd rubystudies/
。
我使用CDPATH
来保存.
(当前工作目录)和一个包含所有项目的目录,以便我可以从任何地方切换到其中任何一个。您可能还希望包含主目录,以便快速访问其包含的子目录。