Linux路径的不同之处
/etc/passwd
../etc/passwd
/../etc/passwd
这些路径是一样的吗?
答案 0 :(得分:3)
第一个是绝对路径。以/开头的任何路径都是绝对路径,它包含到达文件所需的所有目录。
第二个是相对路径。 '..'是一个特殊目录,表示当前目录的父目录。例如,如果您当前位于/ etc / X11文件夹中,.. / etc / passwd将意味着上一个文件夹(到/ etc),文件passwd将在那里。
最后一个很奇怪。根目录'/'没有父目录,但它内部仍然有'..'文件夹。如果你在'/'里面做'cd'就没有任何反应,所以这与第一个opton(/ etc / passwd)的工作方式非常相似,但它看起来相当令人困惑。
答案 1 :(得分:2)
首先是绝对路径。考虑它就像真正的确切位置。
第二是相对的,取决于你在哪里。 如果您当前的目录是
/home/user/
然后../etc/passwd
位于:
/home/etc/passwd
至于最后一个,它没有意义,因为/是每个文件夹的根。它与/home/etc/passwd
答案 2 :(得分:2)
/etc/passwd
与最近的Linux内核中的/../etc/passwd
相同。
LVS会自动将"."
和".."
的条目添加到目录中,对于"/"
,它们都会指向"/"
的inode。
../etc/passwd
它是一个相对路径,因此它取决于进程当前工作目录。
如果cwd为"/"
或"/etc"
,则它们都指向同一个文件。
另请参阅:Canonicalization