一、文件常见时间参数
1、modification time(mtime)
当该文件的“内容数据”更改时,就会更新这个时间,内容数据指的是文件的内容,而不是文件的属性或权限
2、status time(ctime)
当该文件的“状态”改变时,就会更新这个时间,举例来说,像是权限与属性被更改了,都会更新这个时间。
3、access time(atime)
当“该文件的内容被取用”时,就会更改这个读取时间(access)。举例来说,我们使用cat去读取/etc/man.config,就会更新该文件的atime了。
二、文件时间的查看
1、ls -l 显示的是该文件的mtime,也就是这个文件的内容上次被更改的时间。
注:
如果一个文件的内容有新增,那么它的mtime、ctime、atime都会更新;
如果使用cp拷贝,这原文件的atime也会更新,ctime和mtime不会更新;
如果touch一个已存在的文件,则mtime、ctime、atime都会更新;
2、stat查看文件的状态
三、文件时间的修改
修改命令:touch [-acdmt] 文件名
参数释义:
-a:仅修改访问时间;
-c:仅修改文件的时间,若该文件不存在则不创建新文件;
-d:后面可以接欲修改的日期而不用目前的日期,也可以使用--date="日期或时间";
-m:仅修改mtime;
-t:后面可以接欲修改的时间而不用目前的时间,格式为[YYMMDDhhmm]。
举例:
1、将文件日期调整为2天前
# touch -d "2 days ago" man_db.conf
如上图可以看到mtime和atime都被改为2天前,但是ctime没有改。
2、修改文件时间为指定时间
# touch -t 200709151330 man_db.conf
如上图可以看到mtime和atime都被改为2天前,但是ctime没有改。
3、通过touch命令可以轻易修改文件的日期与时间,即使我们复制一个文件时,复制了所有属性,但也没有办法复制ctime这个属性的,ctime可以记录这个文件最近的状态(status)被改变的时间。