linux文件时间戳(atime, mtime, ctime)

简介

在linux系统创建一个文件后,使用stat <文件名>命令行查看文件状态,总是能看到 3 个时间戳,如下图所示:
linux文件时间戳(atime, mtime, ctime)_第1张图片
从上图可以看到,touch命令创建文件abc后,使用 stat abc命令行查看abc文件的状态,显示了3个时间戳,分别是:

  1. Access 访问时间
  2. Modify 编辑时间
  3. Change 变化时间
    由于是touch命令新创建的空文件,所以上面3个时间戳完全一样。

Access访问时间戳

Access访问时间戳记录的是最后一次文件被读取的时间。
这意味着,文件内容即使没有任何编辑的痕迹,只是被读取,Access访问时间戳都将发生变化。
如下图:
linux文件时间戳(atime, mtime, ctime)_第2张图片
使用cat命令行显示一下文件abc的内容,再使用stat abc查看文件状态,Access已经发生了改变。

Modify编辑时间戳

Modify编辑时间戳记录文件最后一次被写入并保存的时间。即使文件没有任何改动,只是重新保存了一下,Modify编辑时间戳将被记录。
如下图:
linux文件时间戳(atime, mtime, ctime)_第3张图片
使用echo管道,向abc文件写入字符串"1"后,使用stat abc查看文件状态,会发现Modify编辑时间戳变了,同时Change变化时间戳也变了。

Change变化时间戳

Change变化时间戳的改变,不只是单纯的由于编辑文件引起的。实际上,Change变化时间戳的改变意味着:与文件相关的任何属性发生变化,Change变化时间戳都将记录在案。如:改变文件的访问权限。
如下图:
linux文件时间戳(atime, mtime, ctime)_第4张图片
使用chmod改变了文件abc的读写权限,Change变化时间戳记录了这个时间。

完!

你可能感兴趣的:(linux操作系统,linux,运维,服务器)