这两条命令意味着什么?
cd ../
cd /..
在第一个命令上的树和第二个命令的根目录上,我将结束两个目录。为什么会发生这种事?
发布于 2013-04-02 16:59:25
目录/文件夹名称末尾的/
是可选的。大多数情况下,包括或省略目录名称中的最后斜杠都不会改变命令的效果。
所以cd ../
等同于cd ..
。
不以/
开头的路径是相对路径;它们是相对于当前目录解析的。
每个目录都有两个特殊条目:
.
的目录条目,解析为目录本身。..
的目录条目,解析为该目录的父目录(即包含该目录的目录)因此,cd ../
和cd ..
将目录更改为当前目录的父目录。因此,如果您从/home/fazlan
中开始并运行cd ..
或cd ../
,您最终将进入/home
。
相反,/..
是一条绝对路径(尽管是一条不寻常的路径)。/
是文件系统的根目录--如果您一路在目录层次结构中向上,您就可以访问这个目录。(使用相同的父级和子级隐喻,我们说/
是文件系统中所有东西的祖先。)
由于..
的意思是“该目录的父目录”,而/
的意思是“文件系统的顶部”,所以/..
的意思是“文件系统顶部的父目录”。
但是,谈论包含/
的目录意味着什么呢?/
是个例外。由于没有包含它的目录,我们说/
's的父级是它本身,因此,在/
中,..
是/
,因此/..
和/
是相同的。
这就是为什么cd ../
从您开始的位置为您提供一个目录,而cd /..
则将您带到最顶层。做这些事情的更优雅和容易理解的方法分别是cd ..
和cd /
。
发布于 2013-04-02 16:56:18
第一条是相对路径。第二条是绝对路径。
那个..。在这个论点中,运算符意味着向上移动一个。
不在前面的斜杠表示子目录名称的划分.
前面的斜杠表示“这是一个绝对路径,从根目录开始。”那个..。因为你不能再退却了。(有一段时间,有很多这样的允许你打破色度)
发布于 2013-04-02 17:00:11
单点(.)表示当前目录。实际上,如果您执行了一个cd .
,它将把您放到当前目录中(这看起来什么也不做)。如果要将某些内容从/dir1复制到当前的dir,您可以这样做:
cp /dir1/somefile.txt .
执行cd ..
会使您获得一个目录级别。cd ../
也是这样做的。如果你想上升两个层次,你会在最后再加两个点,如下所示:
cd ../..
要返回根目录,可以执行一个cd /
。现在假设我执行了以下操作:
cd /dir1/dir2/dir3/..
这将我放在/dir1/dir1 2目录中,因为(正如我们前面所建立的) ..
告诉它上升一个级别。所以它到了dir3,然后上升了。
通过调用一个cd /..
,您正在告诉它转到根目录/
,然后上升一个级别,这是它无法做到的。所以它实际上是把你留在根目录下,而不是。
https://askubuntu.com/questions/277188
复制相似问题