目录下的 . 和 ..
目录下的 . 和 .. 是什么
Linux 系统的目录下一定会有 .
和 ..
两个文件, 只有这两个文件的目录就是空目录。这两个文件就是普通文件(或者说是目录文件),和其它的目录相比,并没有本质的不同,只是名字比较特殊。在列出一个目录下的所有文件时,我们可以认为一个目录下的文件分为三类:
-
不以点号开头的普通文件
-
以点号开头的隐藏文件
-
.
和..
两个特殊文件
.
表示当前工作目录,..
表示当前工作目录的上一级目录(父目录)。
. 文件
.
用来指代自己,使用在文件的完整路径表示中(其实就是相对路径表示,因为相对路径必须以目录打头,当表示当前工作目录下的资源时,就必须使用这种写法)。我在这里使用完整路径是想表示根据所需的信息(在绝对路径表示中,就是绝对路径字符串;在相对路径表示中,就是相对路径字符串和当前工作目录)能够唯一确定一个资源,而不用在某一特定搜索范围内搜寻,找到哪个算哪个。
所以在执行 Linux 命令时,上上之策是直接使用完整路径指明想执行的命令,下下之策才是在 PATH 环境 变量里按目录顺序搜索想执行的命令(这有很大的变数)。
因为一个目录下面总有一个 .</