“。”和“..”在文件夹中的含义是什么?

当我使用ls -a查看文件夹中的隐藏文件时,默认创建了2个隐藏文件,这两个文件的意义是什么...

 ls -a 

产生

 . .. 

. 是当前文件夹。

..是当前文件夹上方的文件夹 – 包含当前文件夹的文件夹。

当有人想从他们的主目录运行脚本时,您有时会看到正在使用的单点。 例如:./ install-app.sh。 这意味着文件“install-app.sh”位于当前目录中。 和/home/username/directory/install-app.sh一样有效。 同样,如果文件位于父目录中,您也可以执行../install.app。 之所以这样,不仅仅是为了导航,而且还不应该仅仅通过误导主目录中的文件来意外地隐藏系统应用程序。

这些是自我(。)和父(…)目录的硬链接。 它们是在创建目录时创建的。 永远不能删除它们(不删除它们指向的目录)。

如果您创建目录:

 mkdir /tmp/foo 

你可以看到,/ tmp / foo实际上有2个硬链接:

 drwxr-xr-x 2 michal michal 4096 2011-08-07 18:40 /tmp/foo ^---- two hardlinks 

首先是从/ tmp /目录指向/ tmp / foo,第二个是’。’ 用in / tmp / foo /指向它自己。

另请注意,您可以使用ls -A (而不是ls -a )列出包括隐藏文件在内的所有文件,但不包括...目录。

. 当前文件夹

..父文件夹