[Linux]文件的atime ctime mtime

与文件有关的时间

    访问时间

     当读取文件内容时,就会更改这个时间。比如cat指令读取一个文件,这个文件的atime就会改变;

    修改时间

     这个时间指的是文件内容修改而非文件属性修改的时间。当数据内容被修改时,这个时间就会改变。用指令ls -l默认显示的就是这个时间;

    状态改变时间

     当一个文件的状态改变时,这个时间就会改变。比如通过chmod指令更改文件的属性,该文件的ctime就会改变。


当使用stat命令时,会出现以下三个类型的时间,Access,Modify和Change

    access time表示最后一次访问文件的时间;

    modify time表示最后一次修改文件的时间;

    change time表示文件属性最后一次改变的时间,包括权限、大小、属性等。



如果想要要查看atime、mtime和ctime,可以这样操作


由于当前的文件我们只是创建,所以此时该文件的三个时间都是一样的。


三个时间的变化

    首先我们对a.txt修改mtime,只需要改变文件内容就可以了


使用vim指令打开并向文件内写入内容,发现a.txt的3个时间都发生了改变;

    接下来,对于file文件我们使用cat指令访问它,然后查看它的atime


    使用chmod指令,会改变a.txt的ctime


由此,我们可以知道

1,当我们仅仅只是读取文件时,access time 改变,而modify,change time 不会改变;

2,当修改文件时,access,modify,change time 都会跟着改变;

3,当修改文件属性时,change time 改变,而access,modify time 不变。



touch命令和三个时间的关系

    touch有两个功能,一个使用来创建新的文件,另外一个是把已经存在的文件时间变为系统当前的时间,把数据原封不动地保存起来。

    -a:或--time=atime或--time=access或--time=use    只更改存取时间;

    -c:或--no-creat   不建立任何文件;

    -d:<时间日期>   使用指定的日期时间,而非现在的时间;

    -f:此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题;

    -m:或--time=mtime或--time=modify   只更改変动时间;

    -r:<参考文件或目录>   把指定文件或目录的日期时间都设成和参考文件或目录的日期时间相同的时间;

    -t;<日期时间>   使用指定的日期时间,而非现在的时间;

    --help:在线帮助;

    --version:显示版本信息。

    touch -a

    touch -m

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值