1

Linux路径有什么不同

   /etc/passwd
 ../etc/passwd
/../etc/passwd

这些路径相同吗?

4

3 回答 3

3

第一个是绝对路径。任何以 / 开头的路径都是绝对路径,它包含访问文件所需的所有目录。

第二个是相对路径。'..' 是一个特殊目录,表示当前目录的父目录。例如,如果您当前位于 /etc/X11 文件夹中,../etc/passwd 将意味着向上一个文件夹(到 /etc),并且文件 passwd 将在那里。

最后一个很奇怪。根目录 '/' 没有父目录,但里面仍然有 '..' 文件夹。如果您在 '/' 内对 .. 进行 'cd',则不会发生任何事情,所以这与第一个选项 (/etc/passwd) 的工作方式几乎相同,但看起来相当混乱。

于 2012-07-28T09:06:07.370 回答
2

首先是绝对路径。将其视为真实的确切位置。

其次是相对的,取决于你在哪里。如果您的当前目录是

/home/user/

然后../etc/passwd将位于: /home/etc/passwd

至于最后一个,它没有意义,因为 / 是每个文件夹的根目录。基本上是一样的/home/etc/passwd

于 2012-07-28T09:03:44.590 回答
2

/etc/passwd/../etc/passwd最近的 Linux 内核相同。

LVS自动为目录添加和条目,对于".",它们都指向's inode。"..""/""/"

../etc/passwd它是一个相对路径,所以它取决于进程当前的工作目录。如果 cwd 是"/"or "/etc",那么它们都指向同一个文件。

另请参阅:规范化

于 2012-07-28T09:09:17.820 回答