A C M time

A C M time

提到ACM我们会想到:ACM程序设计大赛。不过这里的ACM,都指的是时间。下面看一下他们的概念:


  • atime access time :访问时间,文件被读取或执行时会改变
  • mtime modify time :修改时间,文件本身内容被修改时会改变
  • ctime change time :更改时间,文件的属性被修改时会改变,如修改文件的权限,文件属组,+ia属性等等。

      一般mtime改变了ctime就会同时改变(inode更改相关)。注意ctime,ctime不是 create time  创建时 linux 

像windows下会保留文件被创建的时间,所以一个文件被修改后它的创建时间就没有了。

     stat 文件名:当我们执行这样一条命令的时候,会出现:


那么,这三个时间的区别都是什么呢?

(1)Access是指“访问时间”

对于文件来说,当我们用编辑器打开file,或使用cat more less grep sed 等等命令读取文件内容,以及使用file cp命令操作文件,或执行可执行文件时,Access时间会被更新,空文件也不例外。

对于目录来说,只进入目录不会更新其Access时间,但是通过ls查看目录内容时,Access时间就会更新。使用ls -lu查看文件时,会显示出来文件的Access时间。

(2)Modify是指“更改时间”

当更改一个文件的内容时,此文件的modify时间记录会被更新。Modify时间更新时,Access和Change时间都会得到相

应的更新。用ls -l看到的时间是文件的Modify时间

(3)Change是指“改变时间”

主要是指文件的状态或属性的改变。对一个文件或目录进行mv chown chcgrp等操作后,change 时间会更新。ls -lc显示的是change time



注意几处地方:

1)解压一个打包的文件,解压出来的文件的mtime是文件最后被修改的time,这个时候ctime却能表示这个文件被解包

的时间,也就是在本机上被创建的时间(前提ctime没有被修改过),所以会看到mtime和ctime相差很大。使用cp命

令会修改源文件的三个time,想要保留原文件的时间属性可以使用-p选项,但是只能保留atime和mtime,ctime是一

样会被改变的。文件夹的三个time取决与文件夹里面文件的三个time。任何一个文件的atime,mtime,ctime的改变

都直接导致文件夹相应a、m、c time的改变。所以通过看用户home文件夹的time来判断用户的创建时间是不准确的。

一个用户的登录,在home目录创建文件,和退出登录等动作都是会改变home目录的三个time的。总结下linux没有办

法能确定一个文件的创建时间,只能通过各种间接的办法去推测大概的时间。linux推测用户创建时间的方法:(都

是不准确)同样的一个用户的创建时间也没有办法确定。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值