* nixで新しいディレクトリを作成すると、いくつのエントリが生成されますか?

* nixで新しいディレクトリを作成すると、いくつのエントリが生成されますか?

私の考えmkdir ~/aには2~3個程度のようだ。

  • そのディレクトリに1つのエントリ(~/a)があります。
  • それ自体には1つの項目があります(cd a && ls .)。
  • および/または自分自身のための1つの項目を追加(cd a && ls ..

誰かがこれが2か3かを明確にすることはできますか?

ベストアンサー1

空のディレクトリから:

% stat .
  File: `.'
  Size: 6               Blocks: 0          IO Block: 4096   directory
Device: fe04h/65028d    Inode: 537317737   Links: 2
Access: (0750/drwxr-x---)  Uid: ( 1000/stribika)   Gid: (  100/   users)
Access: 2011-02-22 08:47:20.935036074 +0100
Modify: 2011-02-22 08:47:20.935036074 +0100
Change: 2011-02-22 08:47:20.935036074 +0100
 Birth: -
% mkdir foo
% stat .
  File: `.'
  Size: 16              Blocks: 0          IO Block: 4096   directory
Device: fe04h/65028d    Inode: 537317737   Links: 3
Access: (0750/drwxr-x---)  Uid: ( 1000/stribika)   Gid: (  100/   users)
Access: 2011-02-22 08:47:20.935036074 +0100
Modify: 2011-02-22 08:47:57.465036072 +0100
Change: 2011-02-22 08:47:57.465036072 +0100
 Birth: -
% stat foo
  File: `foo'
  Size: 6               Blocks: 0          IO Block: 4096   directory
Device: fe04h/65028d    Inode: 509269      Links: 2
Access: (0750/drwxr-x---)  Uid: ( 1000/stribika)   Gid: (  100/   users)
Access: 2011-02-22 08:47:57.465036072 +0100
Modify: 2011-02-22 08:47:57.465036072 +0100
Change: 2011-02-22 08:47:57.465036072 +0100
 Birth: -

ご覧のとおり、空のディレクトリへのリンクが2つあります。その中に新しいディレクトリを作成すると、リンク数が3に増加します。また、新しいディレクトリへのリンクが2つあります。合計3つの新しいリンクがあります。

これは、各ディレクトリに独自のリンク(.)と親ディレクトリ(..)があるためです。

おすすめ記事