Linux文件的时间
关于Linux文件的ctime、atime和mtime等几个时间的介绍,推荐《Linux的3个文件时间》比较不错,这篇文章已经介绍的比较全面了,但是本文对它做进一步的解释,并对一些情况进行了验证和总结。
* ctime
补充说明
网上很多地方叫它create time,是错的,正确的名字应该是change time,修改时间。下面就对ctime做了些测试。
首先,我们创建一个新文件,并看看它的ctime情况。

文件刚创建时,a、m、c三个时间相同。
再重复执行一次前面的echo命令,

ctime、mtime都修改了。
只修改mtime属性,用touch修改。

ctime和mtime又变成一样了。
用vim修改并替换其中一个字符,不要让文件大小改变,看看ctime会变吗?


三个时间都变了,且相同。
用vim打开,什么也不改,然后按:q退出,看mtime变么?

只有atime变了。
只修改文件的执行权限属性:

只有ctime变了。
atime、ctime、mtime的行为总结:
atime 对应文件的read操作,有read操作发生,则atime变化;
ctime对应文件的writie操作,有write操作发生,则ctime变化;
ctime对应文件的all change操作,all表示不仅文件的内容变化,还有文件的所有属性发生变化,都引发ctime更新。而atime和ctime仅记录对文件内容发生操作行为的时间。
扩展
显示文件属性的命令
stat
ls -l filename 显示mtime
ls -lu filename 显示atime
ls -lc filename 显示ctime
修改文件属性的命令
touch
chmod
user
group
发生文件读操作的命令
cat
more
head
less
tail
发生文件写操作的命令
> 或>> 重定向命令
发生读写操作的命令
各类编辑器vi、vim、emacs,且只有改了情况下才有写发生。
Linux文件的时间的更多相关文章
- linux文件时间的查看和改动touch
1. linux文件的时间 linux下文件时间主要有以下三种: 1.1 modification time(mtime) 文件改动时间.即文件内容的改动时,更新这个时间.不包含文件权限和属性的改动. ...
- 修改linux文件的mtime
一. Linux 文件个时间信息 所有Unix 文件系统中的文件或文件夹有三个时间戳,分别为atime.ctime和mtime. atime 表示最后一次访问(仅仅访问,没有改动)文件的时间: mt ...
- Linux文件时间属性
Linux文件时间属性 ...
- Linux文件3个时间点(access time,modify time,change time)
在Linux中使用stat命令来查看文件的详细信息. 如图所示,会出现3个类型的时间,分别是Access,Modify,Change. access time:表示最后一次访问(仅仅是访问,没有改动) ...
- linux测试noatime对文件访问时间的影响
linux测试noatime对文件访问时间的影响 文件(如abc)有3个时间: # stat abc Access: 2015-04-16 19:30:13.665970572 +0800 Modif ...
- Linux 文件时间记录属性 调优
Linux 文件时间属性介绍 atime:(access time)显示的是文件中的数据最后被访问的时间,比如系统的进程直接使用或通过一些命令和脚本间接使用.(执行一些可执行文件或脚本) mtime: ...
- linux 下查看文件修改时间,访问时间,状态改变时间
http://blog.sina.com.cn/s/blog_6285b04e0100f4xr.html 查看文件时间戳命令:stat awk.txt File: `awk.txt' Size: 20 ...
- Linux文件的三个时间属性(Atime,Mtime,Ctime)
Linux下,一个文件有三种时间,分别是: 访问时间:atime 修改时间:mtime 状态时间:ctime 访问时间:对文件进行一次读操作,它的访问时间就会改变.例如像:cat.more等操作,但是 ...
- linux文件时间
Linux 查看文件修改时间(精确到秒)(简单) ls --full-time 查看文件时间戳命令:stat test.txt linux 下查看文件修改时间 等(详细) 查看文件时间戳命令:stat ...
随机推荐
- SCCM2012 R2实战系列之六:安装客户端代理软件
在安装客户端代理软件之前,请大家确保已经对本系列的第四和第五部分有了基本了解,而且对SCCM环境做了初始化配置和发现方法.我们目前讨论的是加域的计算机,对于工作组的计算机还需要进行额外的配置.在上篇文 ...
- keras的LSTM函数详解
keras.layers.recurrent.LSTM(units, activation='tanh', recurrent_activation='hard_sigmoid', use_bias= ...
- echart力导向图
<!DOCTYPE html> <html lang="en"> <head> <meta charset="GBK" ...
- 一个服务器的IIS只能绑定一个HTTPS也就是443端口
默认情况一个服务器的IIS只能绑定一个HTTPS也就是443端口 要实现多个站点对应HTTPS只能更改IIS配置 地址:C:\Windows\System32\inetsrv\config\appli ...
- POI操作Excel(二)
注意:HSSFWorkBook对应2003版Excel XSSFWorkBook对应2007以上的Excel 一.创建时间单元格 public void helloPoi3() throws ...
- RISC与CISCCPU构架
RISC 精简指令集 CISC复杂指令集 CISC架构的代表: x86, C51 RISC架构的代码:arm, mips,powerpc, avr, pic 指令集的区别 首先从字面上理解就能知道, ...
- Mapreduce入门和优化方案
MapReduce基本原理和高性能网络下优化: Mapreduce概述 Mapreduce式谷歌开源的一项重要技术,是一个编程模型,用来进行大数据量的计算,对于大数据量的计算通常采用的处理方式式并行计 ...
- HBase原理和架构
HBase是什么 HBase在生态体系中的位置 HBase vs HDFS HBase表的特点 HBase是真正的分布式存储,存储级别达到TB级别,而才传统数据库就不是真正的分布式了,传统数据库在底层 ...
- 升级cordova
node -v npm -vcordova -v npm install npm -g --force npm install -g n --force n stable npm install -g ...
- Java8之分组
数据库中根据多个条件进行分组 ) from tableA group by a, b 现在不使用sql,而直接使用java编写分组,则通过Java8根据多个条件进行分组代码如下: List<Us ...