更改目录:
$ 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/./. :)