lsハードリンクの問題

lsハードリンクの問題

私はディレクトリls -laで実行していますVolumes。このMMディレクトリには9つのハードリンクがあり、このディレクトリには12のものがあることを示していますMedia。その後、ディレクトリcdに移動MMして実行するls -laと7つのプロジェクトのみが表示され、ディレクトリに移動するとcd期待Mediaどおりに12のプロジェクトが表示されます。MMカタログに7つのアイテムしかないのはなぜですか? 9ならダメですか?

答え1

各ディレクトリには少なくとも2つの参照があります。 1つは親ディレクトリ(Volumes対応するエントリ/)で、もう1つは独自の.エントリで参照されます。

サブディレクトリがある場合、各サブディレクトリには..親ディレクトリを参照するエントリがあり、これらのエントリは親ディレクトリのリンク数にも影響します。

したがって、/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

関連情報