ls 硬链接问题

ls 硬链接问题

我在目录ls -la上运行Volumes。它显示该MM目录有 9 个硬链接,该Media目录有 12 个。如果我随后cd进入该MM目录并运行ls -la,它仅显示 7 个项目,而如果我cd进入该Media目录,它会按预期显示 12 个项目。为什么MM目录只有 7 项?不应该是9吗?

答案1

每个目录至少有两个引用:一个来自其父目录(Volumes中的条目/),另一个来自其自己的.条目。

如果有子目录,每个子目录都有一个..引用父目录的条目,并且这些条目也有助于父目录的链接计数。

因此,/Volumes目录的链接计数为 9,其中 1 个来自/,加上 1 个来自自身,再加上 7 个来自子目录。

答案2

.代表当前目录,其中as..代表父目录。

例如,目前我在demo目录 中

$cd demo/dir1
$pwd
/home/guru/demo/dir1       <-  my current directory
$cd .
$pwd
/home/guru/demo/dir1       <-  cd again to my current directory
cd ..
$pwd
/home/guru/demo           <-  cd  to parent directory

相关内容