为什么使用 `/../` 更改目录有效?

为什么使用 `/../` 更改目录有效?

更改目录:

$ pwd
/usr
$ cd bin && pwd
/usr/bin

..,结果相同:

$ pwd
/usr
$ cd bin/../bin && pwd
/usr/bin

但为什么呢?为什么 shell 没有抛出错误?

答案1

嗯,“..”是目录中的一个普通条目(“.”也是如此),正如你通过“ls -la”看到的那样,它指向父目录。

因此,拆分“cd bin/../bin”会使你从 usr 移动到 usr/bin,然后再回到 usr,然后再回到 usr/bin。在每个“/”之后都会进行目录移动。

您也可以尝试 cd bin/././././bin/../bin/./. :)

相关内容