234 字
1 分钟
Linux中的三种时间戳:atime、mtime、ctime

标准的 POSIX 文件有三个时间戳:

简称全称含义
atimeaccess timestamp最后一次读取的时间
mtimemodification timestamp最后一次写入的时间戳
ctimestatus change timestamp最后一次更改文件元信息的时间戳

这里面的atime和mtime很好理解,分别对应了读取和写入文件,但是ctime就比较不好理解了。

文件元信息是关于文件本身的信息,比如文件的大小、权限许可、所有者这些,不在文件的内容里的信息。比如修改文件的访问权限的时候,atime和mtime都不会改变,但是ctime会改变。

要查看文件的元信息,包括(atime、mtime、ctime)可以使用stat

cyrus:~$ touch new_file
cyrus:~$ stat new_file
  File: new_file
  Size: 0               Blocks: 0          IO Block: 4096   regular empty file
Device: 820h/2080d      Inode: 67376       Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/   cyrus)   Gid: ( 1000/   cyrus)
Access: 2023-11-02 20:57:28.696325828 +0800
Modify: 2023-11-02 20:57:28.696325828 +0800
Change: 2023-11-02 20:57:28.696325828 +0800
 Birth: 2023-11-02 20:57:28.696325828 +0800

参考链接#

https://www.gnu.org/software/coreutils/manual/html_node/File-timestamps.html

Linux中的三种时间戳:atime、mtime、ctime
https://cyrus28214.github.io/posts/linux-file-timestamps/
作者
Cyrus
发布于
2023-11-07
许可协议
CC BY-NC-SA 4.0