文件路径开头的反斜杠?

0 command-line cd-command

cd在终端使用命令时,如果我输入类似的内容,我会收到“没有这样的目录”错误

cd /directory/whatever/
Run Code Online (Sandbox Code Playgroud)

但是当我输入类似

cd \directory/whatever/
Run Code Online (Sandbox Code Playgroud)

它工作得很好。

无论我是在主目录中还是在另一个目录中,都会发生这种情况。

更重要的是,这似乎只适用于像目录DownloadsPictures等等,也目录,我已经创造了自己。目录喜欢usr并且etc没有这个问题。

什么可能导致这种情况?以及如何将其更改为正常?

Ser*_*nyy 5

cd /directory/whatever/使用完整路径名,从最顶层目录开始/。通常只有具有 root/sudo 权限的用户才能directory在那里创建目录,因此可能/不存在,因此出现错误。

cd \directory/whatever/使用相对路径名- 相对于当前工作目录。终端从用户的主目录开始,也/home/$USER就是与 what pwdor echo $PWDwould report相同。您可能已经在主目录中创建了directory子目录whatever。等效于cd ./directory/whatever,其中./表示当前工作目录链接。

至于\d使用斜杠作为转义字符,这在这里是不必要的,但在文件名包含 shell 视为具有不同含义的特殊字符的情况下是必要的。例如,cd with\ spacecd 'with space'是相同的 - 一个字符串作为cd. 相比之下,cd with space两个不同的字符串是否作为参数给出cd(因为未转义的空格在 shell 中被视为单词分隔符,也就是单词拆分),当然会导致错误