ls 报告目录的修改日期是多少?

Nag*_*gel 7 unix ls

当我运行时ls -l,它会列出文件和目录的修改时间。如该线程中所述,目录的修改时间并不反映其所有内容。它似乎也不受更改目录名称的影响。目录的修改时间到底反映了什么?

是目录顶层的文件(或目录)的最新修改时间吗?

Dol*_*000 9

请注意,在 Unix 中,目录不“包含”其中的文件。相反,它包含指向它们的链接。有关link(2)更多信息,请参阅系统调用。

这意味着目录的“直接”内容是文件名和相应i-numbers的列表。因此,目录的修改日期表明该列表何时更改。会导致此类更改的操作包括但不一定限于以下内容:

  • 在目录中创建一个新文件
  • unlink(2)从目录中删除(或者更确切地说,ing)一个文件
  • 重命名目录中的文件
  • 将其他地方的文件硬链接到目录中