Linux文件的access time,change time,modify time
两者有此不同,在Linux下没有创建时间的概念,也就是不能知道文件的建立时间,但如果文件建立后就没有修改过,修改时间=建立时间;如果文件建立后,状态就没有改动过,那么状态改动时间=建立时间;如果文件建立后,没有被读取过,那么访问时间=建立时间,因为不好判断文件是否被改过、读过、其状态是否变过,所以判断文件的建立时间基本上能为不可能。
#date&&echo"thisisfilebeusedtesttimeoffile">filetime.txt&&ll--full-timefiletime.txt
TueAug415:13:44HKT2009
-rw-r--r-- 1 root root 39 2009-08-04 15:13:44.000000000 +0800 filetime.txt#statfiletime.txt
File:`filetime.txt'
Size:39Blocks:8IOBlock:4096RegularFile
Device:802h/2050dInode:17Links:1
Access:(0644/-rw-r--r--)Uid:(0/root)Gid:(0/root)
Access:2009-08-0415:13:44.000000000+0800
Modify:2009-08-0415:13:44.000000000+0800
Change: 2009-08-04 15:13:44.000000000 +0800atime=accesstime
mtime=modifiy time2、修改时间,修改时间是文件内容最后一次被修改时间。比如:vi后保存文件。ls-l列出的时间就是这个时间。
3、状态改动时间。是该文件的i节点最后一次被修改的时间,通过chmod、chown命令修改一次文件属性,这个时间就会更新。st_atime文件数据的最后存取时间read-u
st_mtime文件数据的最后修改时间write缺省
st_ctime 文件数据的最后更改时间 chown,chmod -cfind.-namefile-printf"%TY-%Tm-%Td%TH:%TM:%TS"
find . -name file -printf "%CY-%Cm-%Cd %CH:%CM:%CS"File:`filetime1.txt'
Size:0Blocks:0IOBlock:4096RegularFile
Device:10ah/266dInode:12Links:1
Access:(0644/-rw-r--r--)Uid:(0/root)Gid:(0/root)
Access:2009-08-0420:51:32.000000000+0800
Modify:2009-08-0420:51:32.000000000+0800
Change: 2009-08-04 20:51:32.000000000 +0800[root@logs-bakfoo]#statfiletime1.txt
File:`filetime1.txt'
Size:14Blocks:2IOBlock:4096RegularFile
Device:10ah/266dInode:12Links:1
Access:(0644/-rw-r--r--)Uid:(0/root)Gid:(0/root)
Access:2009-08-0420:51:32.000000000+0800
Modify:2009-08-0420:53:27.000000000+0800
Change: 2009-08-04 20:53:27.000000000 +0800foo.ok
#statfiletime1.txt
File:`filetime1.txt'
Size:14Blocks:2IOBlock:4096RegularFile
Device:10ah/266dInode:12Links:1
Access:(0644/-rw-r--r--)Uid:(0/root)Gid:(0/root)
Access:2009-08-0420:51:32.000000000+0800
Modify:2009-08-0420:53:27.000000000+0800
Change: 2009-08-04 20:53:27.000000000 +0800File:`filetime1.txt'
Size:23Blocks:2IOBlock:4096RegularFile
Device:10ah/266dInode:14Links:1
Access:(0644/-rw-r--r--)Uid:(0/root)Gid:(0/root)
Access:2009-08-0420:55:05.000000000+0800
Modify:2009-08-0420:55:05.000000000+0800
Change: 2009-08-04 20:55:05.000000000 +0800#statfiletime1.txt
File:`filetime1.txt'
Size:23Blocks:2IOBlock:4096RegularFile
Device:10ah/266dInode:14Links:1
Access:(0777/-rwxrwxrwx)Uid:(0/root)Gid:(0/root)
Access:2009-08-0420:55:05.000000000+0800
Modify:2009-08-0420:55:05.000000000+0800
Change: 2009-08-04 20:57:36.000000000 +0800使用这个特性来挂装文件系统后,只有当mtime比atime更新的时候,才会更新atime。事实上,这个时候atime和mtime已经是同一个东西了。所以这个选项就是为了实现对atime的兼容才推出的。并不是一个新的时间属性。使用方法就是通过mount-orelatime/dir来挂装目录。