base操作系统【Q115】文件系统中 mtime、ctime 和 atime 指什么,都有什么不同

文件系统中 mtime、ctime 和 atime 指什么,都有什么不同

Issue 欢迎在 Gtihub Issue 中回答此问题: Issue 116

Author 回答者: shfshanyue

linux 中,

  • mtimemodified time 指文件内容改变的时间戳
  • ctimechange time 指文件属性改变的时间戳,属性包括 mtime。而在 windows 上,它表示的是 creation time

所以 ctime 会比 mtime 要大一些,使用 stat 查看文件属性如下

$ stat hello.txt
  File: ‘hello.txt’
  Size: 30              Blocks: 8          IO Block: 4096   regular file
Device: fd01h/64769d    Inode: 917526      Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2019-12-10 16:15:55.253325208 +0800
Modify: 2019-12-10 16:15:52.740653330 +0800
Change: 2019-12-10 16:15:52.742653069 +0800
 Birth: -

而 http 服务选择 Last_Modified 时一般会选择 mtime