Linux之文件元信息的三个时间

本文详细解释了Linux系统中文件的三种时间属性:Access、Modify和Change,并通过具体实验验证了每种时间属性的变化条件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

As we all know,Linux下一切皆文件!

小编最近在学习linux操作系统,在学习到stat+文件名命令时,发现有三个时间不知何物疑问经过多番折腾研究,在这里简单讲解下,如果有不对的地方希望大家指出来噢n(≧▽≦)n!
首先在Code文件目录下新建test.c文件,输入“stat test.c”查看文件元信息如下图所示:
初始文件信息
这里可以看到三个时间分别是Access、Modify和Change,此时这三个时间是相同的,且在图中可以看到文件的Size、Blocks都为零,文件此时为regular empty file(普通空文件)。
接下来小编将对时间逐个分析。

1.Modify

从命名上看,词义为“修改”,那么小编来修改一下文件内容,看它是否会改变:
修改文件内容
上图中,小编使用echo命令向空文件test.c中增加了一句“add1”,再查看文件时首先可以看到文件的Size、Blocks均有所改变,文件此时也不再为空,是“regular file”(普通文件)。
再看三个时间,发现后两个时间,即Modify和Change都改变了,此处且先说Modify Time,简单的echo命令即能证明只要文件内容被更改,它就会改变。

2.Access

从命名上看,这个时间可以理解为“访问时间”,那么我们就来访问一下,看它是否会改变:
cat查看文件
很明显的Access时间改变了,说明cat命令查看文件确实能够更改这个时间,但是查看文件不止这一个命令,我们来试一下别的命令是否能够更改:
more查看文件
很遗憾,more命令并没有使Access时间更改,小编也试了less命令,同样没有更改,那这是为什么呢?不是都访问了嘛?
小编简单了解了一下cat、less和more这三个命令的区别,发现cat命令是直接显示文件全部内容的,而less和more则不同,具体区别小编随后再仔细研究!敬请期待!
那么,这里可以总结一下,Access时间在cat命令下会改变,而more和less命令由于一些原因并不会更改Access的时间。

3.Change

从词义上看是“改变”的意思,首先已经确定了Modify是文件内容更改的最后时间,那么小编猜测Change是文件内容以及其他信息(如权限信息)的最后更改时间,接下来看小编为大家见证奇迹O(∩_∩)O~
首先用ll命令查看:
初始权限
上图中,test.c对拥有者user的初始权限为rw,没有可执行权限x,用“chmod”添加权限x后,如下图:
修改权限
此时已经更改了test.c文件的权限信息,此时看一下文件元信息是否更改:
时间更改
0.0 !! 时间真的变了!
哈哈,小编猜对了吧(^__^) …

最后总结:
Access——文件最后的访问时间(cat命令)
Modify——文件最后的更改时间(包括echo、vim方式等)
Change——文件其他信息的最后更改时间(如权限信息)

小编会继续研究的!如果有什么错误的地方,大家一定要说出来噢!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值