Linux 目录上次修改日期

Linux 目录上次修改日期,linux,unix,ftp,Linux,Unix,Ftp,我想知道上次修改目录的日期是什么时候改变的。我修改了特定目录中的一个文件(通过FTP),但该目录的LMD没有改变。它应该如何工作?当添加、删除或重命名文件或子目录时,目录本身的mtime(修改时间)会发生变化 修改目录中文件的内容不会更改目录本身,更新文件或子目录的修改时间也不会更改。如果更改目录的权限,则ctime会更改,但mtime不会更改。目录就像一个包含文件名列表的文件(实际上,您可能无意中在编辑器中打开了一个目录,您可以看到它是一个基本可读的目录内容列表)--因此,当该目录中的文件被添

我想知道上次修改目录的日期是什么时候改变的。我修改了特定目录中的一个文件(通过FTP),但该目录的LMD没有改变。它应该如何工作?

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


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

目录就像一个包含文件名列表的文件(实际上,您可能无意中在编辑器中打开了一个目录,您可以看到它是一个基本可读的目录内容列表)--因此,当该目录中的文件被添加、删除或重命名时,它会被修改。

当子目录被修改时,它会被修改吗?@Flimm它似乎只更新包含目录的mtime,否则它会冒泡到根目录。出于兴趣,哪些编辑器允许您直接打开目录?大多数(甚至是
ed
cat
)似乎都在抱怨,或者提供了一个要打开的文件列表。@NOTT101 vim会很高兴地打开一个目录。@Ether:它不像实际读取目录的inode数据那样“打开一个目录”(或者其他文件系统上的任何等效文件)。它只是为该目录提供了一个文件浏览器。当子目录被修改时它会被修改吗?@Flimm:这取决于对子目录修改的性质。如果在子目录中添加或删除文件,则为“否”。如果重命名子目录,则为“是”(因为新名称存储在保存子目录的目录中,因此“真正”更改的是主目录中的条目,而子目录中没有任何更改)。@Asmageddon:如果某个内容被修改了多个级别,没有办法知道,从修改目录的时候起几级了。想想这意味着什么——最终,当任何文件在任何地方被修改时,根目录都必须被修改,使其内存inode成为对任何文件执行任何操作的每个进程的热点。@cram2208:Gedit是否在目录中创建备份文件,或锁文件,或类似的东西?如果您使用
触摸某个文件而不是
gedit
,会发生什么情况?@JonathanLeffler我应该说,这是一个很好的见解,我现在完全理解了发生了什么。它是目录中的备份文件,而不是文件本身的修改。在文件上使用touch时,实际上更改了文件的LMD,但没有更改目录的LMD。在这些细节上要更加小心。。。