在终端上使用cd
命令时,如果我输入类似的内容,我会收到“没有这样的目录”错误
cd /directory/whatever/
但是当我输入类似的东西时
cd \directory/whatever/
它工作得很好。
无论我是在主目录中还是在另一个目录中,都会发生这种情况。
更重要的是,这似乎只适用于, 等目录Downloads
,Pictures
以及我自己创建的目录。目录喜欢usr
并etc
没有这个问题。
这可能是什么原因造成的?以及如何将其更改为正常状态?
cd /directory/whatever/
使用完整路径名,从最顶层目录开始/
。通常只有具有 root/sudo 权限的用户才能在那里创建目录,因此很可能directory
in/
doesn't exist ,因此出现错误。cd \directory/whatever/
使用相对路径名- 相对于当前工作目录。终端从用户的主目录开始,也/home/$USER
就是与什么pwd
或echo $PWD
将报告的内容相同。很可能您已经在主目录中创建了directory
子目录whatever
。等价于cd ./directory/whatever
,其中./
表示当前工作目录链接。至于
\d
使用斜杠作为转义字符,这在此处是不必要的,但在文件名包含 shell 认为具有不同含义的特殊字符的情况下是必需的。例如,cd with\ space
和cd 'with space'
是相同的 - 一个字符串作为cd
. 相比之下,cd with space
是否将两个不同的字符串作为参数给出cd
(因为未转义的空格在 shell 中被视为单词分隔符,也就是分词),当然它会导致错误