文件的三个时间
相信大家都已经很熟悉windows操作系统了,当我们在windows系统下创建一个文件时,系统同时会为这个文件建立相关的参数去描述这个文件,如图:

这些参数包括文件的大小,文件类型,位置,,以及创建、修改、访问这三个文件时间。那么我们看看再Linux系统下是否会有相似的参数呢?
在Linux下,我们可以用stat+文件名查看文件的相关参数,具体参数解释如下图:

在Linux中的文件系统下,我们发现除了文件的大小,文件名,文件时间等,还多了Inode号和block的相关信息,这主要和Linux文件系统的构成有关,在Linux下一个文件具有一个Inode号,一个Inode号对应着至少一个block块,bolck是访问文件内容的结构,文件block块的个数和文件的大小有关,并且在Linux系统下,block块的大小是固定的。今天我们主要介绍一下Linux系统下的三个时间,他们分别是
Access Time(访问时间)、Modify Time(修改时间)、Change Time(改变时间)。

atime

atime是Access Time的简写,它在Linux的文件系统中被称为访问时间,当文件的内容被访问时,就会更新这个时间,例如我们使用cat、more、less等命令查看文件的内容时,文件的访问时间就会被更新,如下图:

mtime

mtime是Modification Time的简写,它指的是当“内容数据”被修改时,Linux系统会去更新这个时间,例如:我们用echo,vim等指令向文件写数据

在上图中,当我们用echo指令向test.txt文件中写入字符串时,我们发现mtime和下面我们要提到的ctime都被改了,先让我们进入下面的ctime中去看看为什么会产生这样的结果把!

ctime

ctime是Linux系统中的status time,即状态时间,当文件的状态即文件的属性被改变是就会更改这个时间,例如文件系统中的links(链接数),size(文件的大小)、文件的权限、blocks(文件的block数);当这些参数被改变时,Linux就会更改该文件所对应的这个时间参数。

现在你可能会明白刚才修改文件的mtime时为什么文件的ctime也会跟着被改变了吧,因为当文件的内容被修改,文件的大小即size是一定会发生改变的,所以文件的状态时间会随着文件的内容被修改从而被更新。所以说文件的mtime被修改,该文件的ctime也会被改变。

查看文件时间的其他方式
1.ls -l +–time=xx时间+文件名;

该种查询方法默认情况下显示的是文件的mtime.

2.ls -lx +文件名

这种查询方式中
c<—->ctime
u<—->atime
ls -lc 14.www.qixoo.qixoo.com/filename 列出文件的 ctime (最后更改时间)

ls -lu filename 列出文件的 atime(最后存取时间)

ls -l filename 列出文件的 mtime (最后修改时间)

总结
三个文件时间记录了Linux文件系统下的文件被访问,修改,以及改变的时间,当Linux下的文件或者程序出现问题,我们可以通过查询这些时间来判断我们什么时候做了什么操作从而对这些文件产生了影响。

Linux的3个文件时间的更多相关文章

  1. Linux查看和修改文件时间

    参考http://www.361way.com/chang-file-time/1632.html 一:查看时间 1:查看文件的具体时间信息 File: `probn' Size: Blocks: I ...

  2. linux 查看和修改文件时间

    参考:https://www.cnblogs.com/chjbbs/p/6437879.html?utm_source=itdadao&utm_medium=referral . 同时修改文件 ...

  3. Linux的文件时间

    在windows下,一个文件有:创建时间.修改时间.访问时间.而在Linux下,一个文件也有三种时间,分别是:访问时间.修改时间.状态改动时间. 1.访问时间,读一次这个文件的内容,这个时间就会更新. ...

  4. reinstall_xbt: Linux中如何查看文件的最初创建时间

    Linux中如何查看文件的最初创建时间 与文件相关的几个时间: 1.访问时间,读一次这个文件的内容,这个时间就会更新.比如对这个文件使用more命令.ls.stat命令都不会修改文件的访问时间.   ...

  5. Linux中如何查看文件的最初创建时间

    查看 一个文件的 最初创建时间: Linux中如何查看文件的最初创建时间  linux     目前Linux没有直接查看创建文件的命令,你只能通过文件是否被修改过来进行判断. //查看代码stat  ...

  6. Linux文件时间属性

    Linux文件时间属性                                                                                         ...

  7. 【转载】在Linux下,一个文件也有三种时间,分别是:访问时间、修改时间、状态改动时间

    在windows下,一个文件有:创建时间.修改时间.访问时间.而在Linux下,一个文件也有三种时间,分别是:访问时间.修改时间.状态改动时间. 两者有此不同,在Linux下没有创建时间的概念,也就是 ...

  8. linux测试noatime对文件访问时间的影响

    linux测试noatime对文件访问时间的影响 文件(如abc)有3个时间: # stat abc Access: 2015-04-16 19:30:13.665970572 +0800 Modif ...

  9. Linux命令(五)创建文件或修改文件时间 touch

    Linux中 touch 命令可以改变文档或目录时间, 包括存取时间或更改时间, 也可以用于创建新文件. 命令格式: touch [选项] [参数] 选项: -a   只更改文件的读取时间. -m   ...

随机推荐

  1. DevOps

    DevOps DevOps(英文Development和Operations的组合)是一组过程.方法与系统的统称,用于促进开发(应用程序/软件工程).技术运营和质量保障(QA)部门之间的沟通.协作与整 ...

  2. Java 反射 使用总结

    转载请标明出处:http://www.cnblogs.com/zhaoyanjun/p/6074887.html1 本文出自[赵彦军的博客] 反射机制是什么 反射机制是在运行状态中,对于任意一个类,都 ...

  3. 安装cocoapods以及更新cocoapods

    安装 1.设置ruby的软件源 这是因为ruby的软件源rubygems.org因为使用亚马逊的云服务,被我天朝屏蔽了,需要更新一下ruby的源,过程如下: gem sources -l #(查看当前 ...

  4. Unity插件之Unity调用C#编译的DLL

    Unity插件分为两种:托管插件(Managed Plugins)和本地插件(Native Plugins).本文先来说说Unity中的托管插件,本地插件的文章留到下一篇文章再说. 有时候我们会有这样 ...

  5. AngularJS 模块& 表单

    模块定义了一个应用程序. 模块是应用程序中不同部分的容器. 模块是应用控制器的容器. 控制器通常属于一个模块. 应用("myApp") 带有控制器 ("myCtrl&qu ...

  6. Oracle hint

    1.use_concat 网上说法: CONCATENATION和UNION/UNION ALL操作比较类似,根据OR查询条件,将一个查询分解为两个或更多的部分,然后在去掉两个部分重复的记录.由于CO ...

  7. mysql插入多条数据时间复杂度比较

    SQL脚本 select * from users; 方式一: insert into users(name, age, course_id) VALUES("test",1, & ...

  8. 常用MySQL图形化管理工具

    MySQL的管理维护工具非常多,除了系统自带的命令行管理工具之外,还有许多其他的图形化管理工具,这里我介绍几个经常使用的MySQL图形化管理工具,供大家参考. MySQL是一个非常流行的小型关系型数据 ...

  9. 查找素数Eratosthenes筛法的mpi程序

    思路: 只保留奇数 (1)由输入的整数n确定存储奇数(不包括1)的数组大小: n=(n%2==0)?(n/2-1):((n-1)/2);//n为存储奇数的数组大小,不包括基数1 (2)由数组大小n.进 ...

  10. 萌新笔记——linux下(ubuntu)反删除(误删恢复)与回收站制作

    刚刚有个小伙伴不小心删了他写了好几的天代码,为他心疼之余帮他找回了文件. 想到我之前也常常误删一些文件,就干脆分享一下我的反删除方法,并说说我做的回收站(好low的,求大神指点) 首先是反删除软件ex ...