Linux下文件的mtime/atime/ctime研究
2016-03-28 15:54
337 查看
概述
在Linux下,对于某一个文件或文件夹时间的描述有三种:文件修改时间mtime,文件访问时间atime,文件状态改变时间ctime。在Linux下无法获取到文件的创建时间,因为根本就没有保存这个时间。如果文件创建之后没有被修改过内容,那么mtime就是创建时间;如果文件创建之后没有被获取过内容,那么atime就是创建时间;如果文件创建之后没有改变过状态,那么ctime就是创建时间。但是,但是,但是实际情况下以上的如果是不可能存在的。所以想要直接获取文件的创建时间是几乎不可能的。
查看文件的三个时间
使用stat命令
可以使用stat命令查看文件的三个时间,其中Access指最后访问时间;Modify指最后修改时间;Change指最后状态改变时间。使用ls命令
ls -l 默认显示文件的Mtimels -lc 显示文件的Ctime
ls -lu 显示文件的Atime
命令运行情况如下图所示:
三个时间何时变化
Mtime (modification time ):在写入文件时随文件内容的更改而更改的时间。我们用ls -l看到的时间,就是mtimeCtime (status time):是在写入文件、更改所有者、权限或链接设置时随Inode的内容更改而更改的时间。相当于ls -l –time=ctime所看到的时间
Atime (access time):读取文件或者执行文件时更改的时间。也就是用ls -l –time=atime看到的时间
注意:关于Atime,在Linux内核为2.6.30之前是严格变化的。但是2.6.30之后出于性能考虑做了一定的改变,Atime不是每次访问文件时都一定改变,具体情况请参考:文件atime未变问题的研究
根据文件的三个时间排序文件夹中的文件
ls -lt 默认按文件的Mtime排序ls -ltc 按文件的Ctime排序
ls -ltu 按文件的Atime排序
以上三个命令之后都可以加上r表示倒序排列
使用touch命令修改文件时间
请参考:linux 下查看文件修改时间 等linux touch 与 linux文件ctime、atime、mtime
linux下文件的创建时间、访问时间、修改时间和改变时间
相关文章推荐
- Linux能力(capability)机制的继承
- Linux下DIR,dirent,stat等结构体详解
- linux内核线程死锁或死循环(soft lockup)之后如何让系统宕机重启
- linux系统移植点点
- linux 通过互斥量实现线程同步
- linux下开启防火墙,打开端口
- Linux多线程同步的几种方式
- vmlinux,vmlinuz,uImage,zImage,bzImage之间的异同
- Linux系统脚本分析之rc.sysinit
- RHEL(Red Hat Enterprise Linux)配置YUM源
- arm-linux交叉编译之lua
- centos6.5上搭建git2.3.0服务器
- linux的物理内存与线性地址空间布局--2
- Linux与Windows共享文件的两种方法
- linux的物理内存与线性地址空间布局--1
- linux内存寻址解析
- Linux内核访问外设I/O资源的方式
- linux使用flock文件锁解决crontab冲突问题
- 文件系统超级块
- linux地址转换