Linux中用stat命令查看文件时3个时间点解析
2015-01-04 16:54
176 查看
有些时候,我们需要使用stat命令来查看文件的详细信息。另外联想下,ls -l命令显示的是什么时间,touch命令修改文件的时间戳,修改的又是什么时间?在这里我们一起来试验下。
首先,我们来看下stat情况
![](http://s3.51cto.com/wyfs02/M00/58/17/wKioL1So93qD3jDBAAEhdyaEVwY678.jpg)
如图所示,会出现3个类型的时间,分别是Access,Modify,Change。下面我们就对这3个时间进行详细解释下。
access time:表示我们最后一次访问(仅仅是访问,没有改动)文件的时间
modify time:表示我们最后一次修改文件的时间
change time:表示我们最后一次对文件属性改变的时间,包括权限,大小,属性等等。
例如,我们使用cat命令来查看下此文件:
![](http://s3.51cto.com/wyfs02/M01/58/1B/wKiom1So976A45N_AAE4z3X4VsY398.jpg)
此时,文件的access 时间修改了。access时间我们可以理解为我们最后一次访问文件的时间。
我们再来看下change时间的情况:
![](http://s3.51cto.com/wyfs02/M00/58/1B/wKiom1So-JPxm5ijAAD93WKlMEk653.jpg)
此时,当我们修改文件的属性等时,change 的时间会随着改变,但modify时间是不变的,因为我们没有对文件内容进行修改。
下面我们接着看modify时间的情况:
![](http://s3.51cto.com/wyfs02/M00/58/1B/wKiom1So-VCTorFNAADbC8ts5k4777.jpg)
此时我们可以看到,3个时间点都发生了改变。
由此,我们可以知道
1,当我们仅仅只是读取文件时,access time 改变,而modify,change time 不会改变
2,当修改文件时,access,modify,change time 都会跟着改变
3,当修改文件属性时,change time 改变,而access,modify time 不变。
那么,我们使用的命令ls -l显示的又是什么时间呢?touch修改文件的时间戳的时候修改的是什么时间呢?
那我们来继续看下。
ls -l 显示的时间
![](http://s3.51cto.com/wyfs02/M02/58/18/wKioL1So_M-TjmxpAAK3qMH1xs4964.jpg)
此时,对比能够发现,ls -l显示的时间是文件的修改时间。
最后,touch修改的又是什么时间呢?
首先我们看下touch的man帮助即可帮我找到答案。
![](http://s3.51cto.com/wyfs02/M00/58/18/wKioL1So_bfgyKYTAAGkcY_pqyM374.jpg)
不信的话我们再试试看。(不过呢,如果不加参数的话,是所有的时间都会修改掉的。上图中的man touch中有个-a参数,只修改access时间。这个加参数的大家可以自己试下。)
我们直接touch b.txt吧,因为b.txt文件已经存在了,不会新建而是修改其时间戳。
![](http://s3.51cto.com/wyfs02/M02/58/18/wKioL1So_tGyeqOVAAGI5K5AxYg128.jpg)
至此,我想大家应该搞明白了这几个命令的时间问题了。不懂的可以留言我们讨论下。
才疏学浅,有不对的地方还请大神指点。互相学习。
本文出自 “linux菜鸟” 博客,请务必保留此出处http://ludihua.blog.51cto.com/4601284/1599040
首先,我们来看下stat情况
![](http://s3.51cto.com/wyfs02/M00/58/17/wKioL1So93qD3jDBAAEhdyaEVwY678.jpg)
如图所示,会出现3个类型的时间,分别是Access,Modify,Change。下面我们就对这3个时间进行详细解释下。
access time:表示我们最后一次访问(仅仅是访问,没有改动)文件的时间
modify time:表示我们最后一次修改文件的时间
change time:表示我们最后一次对文件属性改变的时间,包括权限,大小,属性等等。
例如,我们使用cat命令来查看下此文件:
![](http://s3.51cto.com/wyfs02/M01/58/1B/wKiom1So976A45N_AAE4z3X4VsY398.jpg)
此时,文件的access 时间修改了。access时间我们可以理解为我们最后一次访问文件的时间。
我们再来看下change时间的情况:
![](http://s3.51cto.com/wyfs02/M00/58/1B/wKiom1So-JPxm5ijAAD93WKlMEk653.jpg)
此时,当我们修改文件的属性等时,change 的时间会随着改变,但modify时间是不变的,因为我们没有对文件内容进行修改。
下面我们接着看modify时间的情况:
![](http://s3.51cto.com/wyfs02/M00/58/1B/wKiom1So-VCTorFNAADbC8ts5k4777.jpg)
此时我们可以看到,3个时间点都发生了改变。
由此,我们可以知道
1,当我们仅仅只是读取文件时,access time 改变,而modify,change time 不会改变
2,当修改文件时,access,modify,change time 都会跟着改变
3,当修改文件属性时,change time 改变,而access,modify time 不变。
那么,我们使用的命令ls -l显示的又是什么时间呢?touch修改文件的时间戳的时候修改的是什么时间呢?
那我们来继续看下。
ls -l 显示的时间
![](http://s3.51cto.com/wyfs02/M02/58/18/wKioL1So_M-TjmxpAAK3qMH1xs4964.jpg)
此时,对比能够发现,ls -l显示的时间是文件的修改时间。
最后,touch修改的又是什么时间呢?
首先我们看下touch的man帮助即可帮我找到答案。
![](http://s3.51cto.com/wyfs02/M00/58/18/wKioL1So_bfgyKYTAAGkcY_pqyM374.jpg)
不信的话我们再试试看。(不过呢,如果不加参数的话,是所有的时间都会修改掉的。上图中的man touch中有个-a参数,只修改access时间。这个加参数的大家可以自己试下。)
我们直接touch b.txt吧,因为b.txt文件已经存在了,不会新建而是修改其时间戳。
![](http://s3.51cto.com/wyfs02/M02/58/18/wKioL1So_tGyeqOVAAGI5K5AxYg128.jpg)
至此,我想大家应该搞明白了这几个命令的时间问题了。不懂的可以留言我们讨论下。
才疏学浅,有不对的地方还请大神指点。互相学习。
本文出自 “linux菜鸟” 博客,请务必保留此出处http://ludihua.blog.51cto.com/4601284/1599040
相关文章推荐
- Linux中用stat命令查看文件时3个时间点解析
- Linux中用stat命令查看文件时3个时间点解析
- Linux中用stat命令查看文件时3个时间点解析
- Linux中用stat命令查看文件时3个时间点解析
- Linux中用Stat查看文件的3个时间点:
- Linux中有关目录的权限和用stat查看文件时三个时间点解析
- linux stat 命令查看文件信息
- 用stat命令查看文件时的三个时间点
- linux下的stat命令查看文件系统的时间
- linux stat 命令查看文件信息
- 【Linux】stat命令查看文件的三个时间
- 【Linux】stat命令查看文件的三个时间参数
- 简述Linux下stat查看文件的三个时间点
- linux stat 命令查看文件信息
- Linux 命令 之 【stat】 查看文件状态。 (包括修改时间)
- 转 Linux 查看磁盘分区、文件系统、使用情况的命令和相关工具介绍
- linux 查看文件内容的命令
- linux中tail命令---用于查看文件内容
- linux tail 命令详解!Linux 文件内容查看工具介绍
- Linux 查看磁盘分区、文件系统、使用情况的命令和相关工具介绍