Linux下文件三个时间参数:

(1)modification time(mtime):内容修改时间

    这里的修改时间指的是文件的内容发生变化,而更新的时间。

(2)change time(ctime):状态修改时间

    这里的修改时间指的是文件的属性或者权限发生变化,而更新的时间。

(3)access time(atime):最后访问时间

    这里的访问时间是指文件被读取,而更新的时间。

在Linux下操作命令分别为:

ls -l    获取文件最后一次内容修改的时间(modification time(mtime))

ls -lu   获取文件最后一次访问的时间(change time(ctime))

ls -lc   获取文件最后一次状态的改变时间(access time(atime))

在Linux下文件没有创建时间这个概念,若文件从创建后不曾修改过则可认为创建时间=修改时间,若文件创建后状态也不曾改变过则可认为创建时间=改变时间,若文件创建后不曾被读取过则可认为创建时间=访问时间。但是,上述情况基本上是不可能的,也就是说几乎不可能获取到文件的创建时间。

下面我在Linux下验证下这三个文件时间

首先,创建一个test.c 的文件,并获取他的三个时间参数

wKioL1dIaaWi4BcnAAAvdIqXKxI467.png

刚开始创建的文件三个时间参数是一样的。

使用vim编辑文件,在test.c中添加内容

wKioL1dIapjTiZI9AAA01IqQFAg256.png

此时我们发现文件的三个时间都发生了变化,这是因为我们在修改文件内容的时候相当于访问文件,在添加内容后文件的属性也发生了变化(大小、块数、时间数据),所以文件的三个时间都发生了改变。

此时我们使用vim 但不向文件内添加内容,相当于访问

wKiom1dIamjAMewmAAAz-ehZEwA931.png

此时我们发现只有文件的访问时间变化了,这印证了通过vim编辑文件实际上是先访问了文件的说法。另外也说明只要其内容没有发生变化,那么文件的修改时间也保持不变。

另外我们测试文件属性变化后的文件的三个时间

wKioL1dIbfGz2BSfAAA_n0MqNug730.png

我们发现此时只有文件的状态时间发生了变化。


Linux下的find指令

http://10810196.blog.51cto.com/10800196/1785798