当你同熟练的UNIX用户进行交谈时,你经常会听到他们傲慢地讲出术语“改变时间(change time)”和“修改时间(modification time)”。对于许多人(和许多字典而言),改变和修改是相同的。这里会有什么不同那?

    只要讨论改变时间和修改时间,就不可能不提到“访问时间(access time)”.访问时间是文件最后一次被读取的时间。因此阅读一个文件会更新它的访问时间,当它的改变时间并没有变化(有关文件的信息没有被改变),它的修改时间也同样如此(文件本身没有被改变)
 
man出来的内容,仅供参考!

     st_atime
           Time when file data was last accessed. Changed by  the
           following   functions:   creat(),   mknod(),   pipe(),
           utime(2), and read(2).

st_mtime
           Time when data was last modified. Changed by the  fol-
           lowing  functions:  creat(), mknod(), pipe(), utime(),
           and write(2).

st_ctime
           Time when file status was last changed. Changed by the
           following   functions:   chmod(),   chown(),  creat(),
           link(2),  mknod(),  pipe(),  unlink(2),  utime(),  and
           write().

ls显示出的time应该是mtime。

touch后,文件的三个时间应该都会改变
问题描述
文件的 ctime、mtime、atime 之间有什么区别?

解决方法
文件的 Access time,atime 是在读取文件或者执行文件时更改的。
文件的 Modified time,mtime 是在写入文件时随文件内容的更改而更改的。
文件的 Create time,ctime 是在写入文件、更改所有者、权限或链接设置时随 Inode 的内容更改而更改的。

因此,更改文件的内容即会更改 mtime 和 ctime,但是文件的 ctime 可能会在 mtime 未发生任何变化时更改 - 在权限更改,但是文件内容没有变化的情况下。 
ls(1) 命令可用来列出文件的 atime、ctime 和 mtime。
ls -lc filename         列出文件的 ctime
ls -lu filename         列出文件的 atime
ls -l filename          列出文件的 mtime 

stat   xxx              ###列出文件状态
     atime不一定在访问文件之后被修改,因为:使用ext3文件系统的时候,如果在mount的时候使用了noatime参数那么就不会更新atime的 信息。而这是加了 noatime 取消了, 不代表真實情況.反正, 這三個 time stamp 都放在 inode 中.若 mtime, atime 修改, inode 就一定會改, 既然 inode 改了, 那 ctime 也就跟著要改了.之所以在 mount option 中使用 noatime, 就是不想 file system 做太多的修改, 而改善讀取效能.

最新文章

  1. C#高性能TCP服务的多种实现方式
  2. psutil 模块
  3. Win7搭建NodeJs开发环境以及HelloWorld展示—图解
  4. UVa 10294 (Pólya计数) Arif in Dhaka (First Love Part 2)
  5. [Angular 2] Exposing component properties to the template
  6. 13_FCITX输入法安装及问题排查解决
  7. js动画学习(五)
  8. 在navigationItem中添加搜索栏
  9. ios根据文本自适应 然后 搭建类似如下效果
  10. [妙味JS基础]第九课:定时器管理、函数封装
  11. [LeetCode] Keyboard Row 键盘行
  12. .Net Core 在Linux服务器下部署程序--(1). Windows 连接 Linux服务器
  13. spring事务源码分析结合mybatis源码(三)
  14. bootstrap轮播图 两侧半透明阴影
  15. Android开发笔记---adb命令
  16. 2016蓝桥杯"取球博弈"问题
  17. clean 伪目标
  18. Tomcat服务安全加固
  19. You Don't Know JS: this & Object Prototypes (第6章 Behavior Delegation)附加的ES6 class未读
  20. C# sqlserver ExecuteNonQuery()方法详解

热门文章

  1. mysql-connector-java升级到6.0以后启动tomcat报错
  2. iOS开源控件库收集
  3. python笔记26-命令行传参sys.argv实际运用
  4. [翻译] Working with NSURLSession: AFNetworking 2.0
  5. 常用的快速Web原型图设计工具
  6. 常用数据类型对应字节数,int长度
  7. 编程之美读书笔记1.1——让CPU占用率曲线听你的指挥
  8. COM中的几个基本概念
  9. C++中无法解析的外部符号错误
  10. [Functional Programming 101] runWIth, evalWith, execWith