目录上次修改日期

Ale*_*art 78 unix linux ftp

我想知道目录上次修改日期何时被更改.我修改了特定目录中的文件(通过FTP),但目录的LMD没有改变.如何运作?

Jon*_*ler 122

添加,删除或重命名文件或子目录时,目录本身的mtime(修改时间)会发生变化.

修改目录中文件的内容不会更改目录本身,也不会更新文件或子目录的修改时间.如果更改目录的权限,则ctime会更改,但mtime不会更改.

  • @Asmageddon:如果某些东西被深层修改了几个级别,就没有办法知道从目录的修改时间到几个级别了.想想这会带来什么 - 最终,任何文件被修改的任何地方都必须修改根目录,使其内存中的inode成为任何文件的任何进程的热点. (7认同)
  • @Flimm:它取决于对子目录的修改性质.如果在子目录中添加或删除文件,则为no.如果子目录被重命名,那么是(因为新名称存储在保存子目录的目录中,所以'真正'改变的是主目录中的条目,并且子目录中没有任何变化). (6认同)
  • @ cram2208:Gedit是否在目录或锁文件中创建了备份文件?如果你使用`touch somefile`而不是`gedit`会发生什么? (5认同)
  • @JonathanLeffler我应该说好的见解,现在我完全了解发生了什么。它是目录中的备份文件,而不是文件本身的修改。在文件上使用touch时,它实际上更改了文件的LMD,但未更改目录的LMD。在这类细节上要格外小心... (3认同)
  • 修改子目录时是否修改了? (2认同)
  • 在Ubuntu的Nautilus中,当添加/重命名/删除文件/子目录时,包含目录的LMD会更新* AND *,而在其中的文件被修改时也会更新。我打开了Gedit,打开了一个文件,当前正在重新保存文件之前和之后检查LMD,并且在刷新Nautilus时,将更新包含目录的LMD。我很困惑,似乎没有人注意到它,或者仅仅是我吗? (2认同)

Eth*_*her 28

一个目录就像一个包含文件名列表的文件(实际上,你可能不小心在编辑器中打开了一个目录,在那里你可以看到它是一个大部分可读的内容列表) - 所以它被修改了添加,删除或重命名该目录中的文件时.

  • @Ether:它不像实际读取目录的inode数据(或其他文件系统上的等效文件)那样“打开目录”。它只是为该目录提供文件浏览器。 (3认同)