首页 > 代码库 > linux atime ctime mtime
linux atime ctime mtime
touch testtime
1、 stat testtime【为文件名】 可以查看这个文件名的三者状态
2、ll testtime;ll --time=atime testtime ;ll --time=ctime testtime
-rw-r--r--. 1 root root 0 Sep 23 19:28 testtime
-rw-r--r--. 1 root root 0 Sep 23 19:28 testtime
-rw-r--r--. 1 root root 0 Sep 23 19:28 testtime
3、vi 一下,里面写入内容
ll testtime;ll --time=atime testtime ;ll --time=ctime testtime
-rw-r--r--. 1 root root 6 Sep 23 19:29 testtime
-rw-r--r--. 1 root root 6 Sep 23 19:29 testtime
-rw-r--r--. 1 root root 6 Sep 23 19:29 testtime 【改变内容,导致三者均改变】
4、date一下,嗯, 时间有改变。
然后 chmod 777 testtime
ll testtime;ll --time=atime testtime ;ll --time=ctime testtime
-rwxrwxrwx. 1 root root 6 Sep 23 19:29 testtime
-rwxrwxrwx. 1 root root 6 Sep 23 19:29 testtime
-rwxrwxrwx. 1 root root 6 Sep 23 19:31 testtime 【改变权限导致ctime 有改变】
5、有vi了一下,改变了内容
-rwxrwxrwx. 1 root root 13 Sep 23 19:33 testtime
-rwxrwxrwx. 1 root root 13 Sep 23 19:33 testtime
-rwxrwxrwx. 1 root root 13 Sep 23 19:33 testtime 【三者所有都有改变】
6、cat testtime 查看一下里面的你内容
ll testtime;ll --time=atime testtime ;ll --time=ctime testtime
-rwxrwxrwx. 1 root root 13 Sep 23 19:33 testtime
-rwxrwxrwx. 1 root root 13 Sep 23 19:34 testtime【只有atime 改变】
-rwxrwxrwx. 1 root root 13 Sep 23 19:33 testtime
--------------------------------------------
总结:
mtime (modification time ):在写入文件时随文件内容的更改而更改的时间。我们用ls -l看到的时间,就是mtime
ctime (status time):是在写入文件、更改所有者、权限或链接设置时随Inode的内容更改而更改的时间。相当于ls -l –time=ctime所看到的时间 【改变权限这个时间有改变】
atime (access time):读取文件或者执行文件时更改的时间。也就是用ls -l –time=atime看到的时间 【cat 查看文件,这个时间有改变】
【改变文件内容】三者都有改变
例子二:
一、
ll /etc/issue;ll --time=atime /etc/issue ;ll --time=ctime /etc/issue
-rw-r--r--. 1 root root 47 Nov 27 2013 /etc/issue
-rw-r--r--. 1 root root 47 Sep 18 19:07 /etc/issue
-rw-r--r--. 1 root root 47 Jun 25 04:26 /etc/issue
二、修改一下时间
touch -t 0807151313 /etc/issue 【将issue文件日期改为2008/07/15 13:13】
三、查看
ll /etc/issue;ll --time=atime /etc/issue ;ll --time=ctime /etc/issue
-rw-r--r--. 1 root root 47 Jul 15 2008 /etc/issue
-rw-r--r--. 1 root root 47 Jul 15 2008 /etc/issue 【atime 和mtime 改变了,ctime也有改变】
-rw-r--r--. 1 root root 47 Sep 23 19:46 /etc/issue【ctime改变成了当前的时间】
---------------------------
例四:
(1)关于ls命令
ls -l 默认查看时间为mtime
ls -lc 查看文件ctime
ls -lu 查看文件atime
比如下载了一个rpm文件
ls -l mtime 为rpm包创建时间
ls -lc ctime 为rpm包下载时间
ls -lu atime 为rpm包访问时间
(2)、关于touch命令
-a 修改文件的access time,同时会修改ctime为当前时间,-a默认修改文件访问时间为当前时间,设置其他时间须与-t或-d等参数一起使用。
-m 修改文件的modification time,同时会修改ctime为当前时间,使用方法同-a。
修改ctime为特定时间的方法:先修改系统时间为想设置的ctime时间,然后touch -a 或者touch -m修改,ctime随着更改为当前系统时间。
(3)、其他
vi 编辑后保存会同时修改掉这三个时间
(4)chgrp、chown、chmod等命令会改变ctime,但atime、mtime不变。
linux atime ctime mtime