答案1
这是书中的一个错误,出版商在本书“主页”的“更新”部分中解决了该错误(https://nostarch.com/linuxbasicsforhackers#updates):
更新
第7页
以下有关向上移动目录级别的文本不正确:
- 您可以使用 .. 来升一级。
- 您可以使用 .. .. 向上移动两个级别。
- 您可以使用 .. .. .. 向上移动三个级别,依此类推。
这段文字应为:
- 您可以使用 .. 来升一级。
- 您可以使用 ../.. 向上移动两级。
- 您可以使用 ../../.. 向上移动三个级别,依此类推。
勘误表没有提到您也引用的示例,该示例显示cd .. ..
,但这显然也是错误的。
某些 shell 支持cd
带有两个参数的命令,其中第二个参数替换当前工作目录的路径名中与第一个参数匹配的任何内容,并将结果路径名更改为。但是,由pwd
和 in找到的当前目录的路径名$PWD
不会包含..
,即使包含,该cd .. ..
命令也根本不会更改目录(考虑到我刚刚描述的语义)。
答案2
你的命令拼写错误。应该是cd ../..
提升两级、cd ../../..
提升三级等。
答案3
我认为这取决于外壳。我使用 zsh 和 oh-my-zsh(作为我的默认 shell)
举例说明
我进入~/miniconda3/bin
并输入cd ......
(没有任何空格),然后进入根目录。
但
当我切换到 bash 时,我需要输入cd ../../..
才能转到根目录。