ctime, atime与mtime释疑
每个档案都有属性及内容。除了档案内容很重要外,时间标记也非常重要--系统管理员可以藉由时间标记进行备份、例行性检查;使用者可以从时间标记找出重要的档案,硬碟的I/O也依靠时间标记(time flag)来进行处理。
UNIX系统将时间标记分成三种:
- atime( A ccess time):档案上次被读取的时间。
- ctime(status C hange time):档案的属性或内容上次被修改的时间。
- mtime( M odified time):档案的内容上次被修改的时间。
我们可以用一个很简单的script来印证这些东西。
#!/bin/bash
echo "ctime: $(ls -lc newFile | awk '{print $6, $7, $8}')"
echo "atime: $(ls -lu newFile | awk '{print $6, $7, $8}')"
echo "mtime: $(ls -l newFile | awk '{print $6, $7, $8}')"
exit 0;
姑且把他命名为showTime.sh
1. 假设我们建立一个新档:
touch newFile
执行showTime.sh,你会发现三种时间是相同的:
ctime: Nov 17 23:14
atime: Nov 17 23:14
mtime: Nov 17 23:14
2. 隔一分钟后,写入一些东西到档案里面:
echo "1st modified" > newFile
结果发现:
ctime: Nov 17 23:15
atime: Nov 17 23:14
mtime: Nov 17 23:15
3. 再隔一分钟后,读取这个档案但不更动内容:
cat newFile
结果发现:
ctime: Nov 17 23:15
atime: Nov 17 23:16
mtime: Nov 17 23:15
4. 在隔一分钟,仅修改属性:
chmod g+wx newFile
结果发现:
ctime: Nov 17 23:17
atime: Nov 17 23:16
mtime: Nov 17 23:15
从这个lab里我们可以得到以下结论:
- ls -l所列出的长资讯,该时间是mtime。
- 如果利用touch某档案,则三种时间属性均被更新。
- 如果你修改了某一档案内容,则ctime与mtime会更新。
- 如果某档案仅被读取或另存新档,则只有atime会被改变。
- 如果你只改变档案属性(如权限、档名、所有人或是suid、acl、chattr等),则只有ctime被更新。
- atime相较之下是最常变动的时间标记,可以将之关闭以增进I/O,特别是多人多工,小档案多以及laptop环境。filesystem设定里可以增加noatime属性,或是chattr +A固定住atime(chattr仅适用于ext2/3/4系列的filesystem)
ctime, atime与mtime释疑的更多相关文章
- 【Linux常识篇(3)】文件及文件夹的ctime atime mtime的含义详解
首先可以使用stat 命令来查询文件的inode信息,其中包括ctime atime mtime [root@localhost ~]# stat sort2.txt File: 'sort2.txt ...
- Linux下文件的三个时间(Atime,Mtime,Ctime)
文件的三个时间 我们已经很熟悉windows系统了,那么我们在windows下新建一个文件,我们知道它在保存的时候肯定是会保存一下文件的创建时间之类的信息的,那么我们来看看windows下的一个文件保 ...
- Linux常用命令之 查找命令 find —— 细说 -atime,-mtime,-ctime
我们知道 Linux里面一切皆文件 ,那么我们能否查看一个文件是何时创建的呢?答案是否定的.那我们可以知道些文件关于时间的什么信息呢?那就不得不说文件状态的三个时间了,它们分别是 -atime, -c ...
- mtime,ctime,atime
mtime,ctime,atime是linux三个主要的变动时间. 这三个时间比较容易理解,但是不容易记忆,也容易搞混. mtime (modification time) 文件内容数据更改时,会更 ...
- Linux -atime、mtime、ctime
Linux中,文件都有其自身的atime.mtime.ctime,在不同的命令下,各时间发生相应的改变.下面,我们来简单的介绍一下: atime (access time):表示最后一次访问文件或目录 ...
- atime、mtime、ctime
当你同熟练的UNIX用户进行交谈时,你经常会听到他们傲慢地讲出术语“改变时间(change time)”和“修改时间(modification time)”.对于许多人(和许多字典而言),改变和修改是 ...
- atime、mtime、ctime的区别及如何降低atime更新 mount时的option noatime
atime.mtime.ctime的区别及如何降低atime更新 mount时的option noatime http://mp.weixin.qq.com/s?__biz=MzA3MzYwNjQ3 ...
- Linux之 find之 ctime,atime,mtime
在Linux操作系统中,每个文件都有很多的时间参数,其中有三个比较主要,分别是ctime,atime,mtime atime 最后一次访问时间, 如 ls, more 等, 但 chmod, chow ...
- Linux的find命令实例详解和mtime ctime atime
这次解释一下三个Linux文件显示的三个时间,然后展示一下find命令的各个功能 在linux操作系统中,每个文件都有很多的时间参数,其中有三个比较主要,分别是ctime,atime,mtime mo ...
随机推荐
- JS中如何使用EL表达式中的对象
JS中如何使用EL表达式中的对象 2017年09月25日 15:33:09 lhpnba 阅读数:4859 1.js中使用el表达式要加双引号或单引号:'${list}' 2.js变量获取el表达 ...
- VirtualBox安装虚拟机全过程
使用Virtual Box安装虚拟机,虚拟机操作系统使用CentOS7进行安装,安装完成后解决网络设置的问题. 一.虚拟机新建过程 1.点击新建. 2.设置内存大小,点击下一步. 3.选择虚拟硬盘,点 ...
- GTY's gay friends HDU - 5172 线段树
GTY has nn gay friends. To manage them conveniently, every morning he ordered all his gay friends to ...
- Ambari和ClouderaManager主要不同对比
打算对新建的hadoop集群使用管理工具,列了以下主要的不同点: 主要的不同点 apache Ambari ClouderaManager Express(免费版) 配置版本控制和历史记录 支持 不支 ...
- 「Python」python与微信
pip3 install itchat 主要用到的方法: itchat.login() 微信扫描二维码登录 itchat.get_friends() 返回完整的好友列表,每个好友为一个字典, 其中第一 ...
- python shell
os.system(cmd) 命令执行结果 0或者1 output = os.popen(cmd) print output.read() 通过 os.popen() 返回的是 file read 的 ...
- [吴恩达机器学习笔记]14降维3-4PCA算法原理
14.降维 觉得有用的话,欢迎一起讨论相互学习~Follow Me 14.3主成分分析原理Proncipal Component Analysis Problem Formulation 主成分分析( ...
- CF540 D 概率 DP
石头剪刀布三种生物(?) 随机战斗,最后三方各自只有自己方存活下来的概率是多少. 局面的转移明显,注意任选两方决定战斗时有可能出现选了同个种类的,因此注意排除掉同种的组合,也就是条件概率什么的. /* ...
- Python学习笔记(三十三)常用内置模块(2)collections_namedtuple_deque_defaultdict_OrderedDict_Counter
摘抄自:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431953239 ...
- 网站开发中很有用的几个 jQuery 地图插件
下面提到的 jQuery 地图插件不仅仅是提供一个简便的方式来安装一个地图,如果你想在它们之间选择一个放到你的网站上,那么它们还有更多的额外选项来提供更多更全面的功能.大部分的 jQuery 地图插件 ...