Linux下文件的三个时间参数:

(1)modification time(mtime):内容修改时间
        这里的修改时间指的是文件的内容发生变化,而更新的时间。

(2)change time(ctime):状态修改时间
        这里的修改时间指的是文件的属性或者权限发生变化,而更新的时间。

(3)access time(atime):最后访问时间
        这里的访问时间是指文件被读取,而更新的时间。

在Linux下操作命令分别为:

ls -l    获取文件最后一次内容修改的时间(modification time(mtime))

ls -lu   获取文件最后一次访问的时间(change time(ctime))

ls -lc   获取文件最后一次状态的改变时间(access time(atime))

在Linux下文件没有创建时间这个概念,若文件从创建后不曾修改过则可认为 创建时间=修改时间

下面通过事例验证:

事例1:

# 直接touch一个test文件并查看时间

[root@localhost ~]# touch test; stat test
File: ‘test’
Size: Blocks: IO Block: regular empty file
Device: fd00h/64768d Inode: Links:
Access: (/-rw-r--r--) Uid: ( / root) Gid: ( / root)
Access: -- ::38.050000000 +
Modify: -- ::38.050000000 +
Change: -- ::38.050000000 +
Birth: -

总结:
    当新创建一个文件时,这个文件的最后访问时间、最后内容修改时间、最后状态更新时间都是一致的。

事例2:

# 修改该文件的权限属性状态:

[root@localhost ~]# chmod  test ; stat test
File: ‘test’
Size: Blocks: IO Block: regular empty file
Device: fd00h/64768d Inode: Links:
Access: (/-rwxrwxrwx) Uid: ( / root) Gid: ( / root)
Access: -- ::38.050000000 +
Modify: -- ::38.050000000 +
Change: -- ::27.816000000 +
Birth: -

总结:
    修改一个文件的权限状态信息,只会更新这个文件的最后状态修改时间。

事例3:

# 修改该文件的内容信息:

[root@localhost ~]# echo hello > test ; stat test
File: ‘test’
Size: Blocks: IO Block: regular file
Device: fd00h/64768d Inode: Links:
Access: (/-rwxrwxrwx) Uid: ( / root) Gid: ( / root)
Access: -- ::38.050000000 +
Modify: -- ::59.638000000 +
Change: -- ::59.638000000 +
Birth: -

总结:
    对比事例2,这里最后状态时间、最后内容改变时间都被更新了。 当修改一个文件时,文件的Modify、Change会被更新。

事例4:

# 查看该文件

[root@localhost ~]# cat test ; stat test
hello File: ‘test’
Size: Blocks: IO Block: regular file
Device: fd00h/64768d Inode: Links:
Access: (/-rwxrwxrwx) Uid: ( / root) Gid: ( / root)
Access: -- ::03.470000000 +
Modify: -- ::29.717000000 +
Change: -- ::29.717000000 +
Birth: -

总结:
    当查看文件时,文件的 Access time 会更新。

linux文件状态的三个时间总结如下:

当需要了解这个文件有没有被修改过 -  Modify Time
当需要了解这个文件最后被查看的时间 - Access Time
当需要了解这个文件权限最后变动的时间 - Change Time

扩展:

查找1天前未更新内容的文件并删除

find . -type f -mtime + | xargs rm -rf 

Linux下文件的三个时间意义及用法的更多相关文章

  1. Linux下文件的三个时间(Atime,Mtime,Ctime)

    文件的三个时间 我们已经很熟悉windows系统了,那么我们在windows下新建一个文件,我们知道它在保存的时候肯定是会保存一下文件的创建时间之类的信息的,那么我们来看看windows下的一个文件保 ...

  2. Linux下文件的三种时间标记:访问时间、修改时间、状态改动时间 (转载)

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

  3. Linux下文件的三种时间标记(atime ctime mtime)

    在windows下,一个文件有:创建时间.修改时间.访问时间. 在Linux下,一个文件有:状态改动时间.修改时间.访问时间. 1)查看文件(或文件夹)的三种时间标记 (stat 命令) Access ...

  4. Linux下文件的三种时间戳

    Linux下文件的三种时间标记 三种时间对应关系表 column column column 访问时间 Access atime 修改时间 Modify mtime 状态改动时间 Change cti ...

  5. Linux 下文件

     Linux下文件的三个时间(Atime,Mtime,Ctime) [root@node ~]# stat install.log File: `install.log' Size: Blocks: ...

  6. linux中文件的三种time(atime,mtime,ctime)

    linux下文件有3个时间的,分别是atime,mtime,ctime.有些博友对这3个时间还是比较迷茫和困惑的,我整理了下,写下来希望对博友们有所帮助. 1 这三个time的含义 简名 全名 中文名 ...

  7. Linux下文件的权限

    一.Linux下查看文件属性 命令为: [root@localhost ~]# ls -al 结果: ls是『list』的意思,重点在显示文件的文件名与相关属性.而选项『-al』则表示列出所有的文件详 ...

  8. Windows与Linux下文件操作监控的实现

    一.需求分析: 随着渲染业务的不断进行,数据传输渐渐成为影响业务时间最大的因素.究其原因就是因为数据传输耗费较长的时间.于是,依托于渲染业务的网盘开发逐渐成为迫切需要解决的需求.该网盘的实现和当前市场 ...

  9. Linux下文件的mtime/atime/ctime研究

    概述 在Linux下,对于某一个文件或文件夹时间的描述有三种:文件修改时间mtime,文件访问时间atime,文件状态改变时间ctime.在Linux下无法获取到文件的创建时间,因为根本就没有保存这个 ...

随机推荐

  1. 机器学习 (一) 单变量线性回归 Linear Regression with One Variable

    文章内容均来自斯坦福大学的Andrew Ng教授讲解的Machine Learning课程,本文是针对该课程的个人学习笔记,如有疏漏,请以原课程所讲述内容为准.感谢博主Rachel Zhang的个人笔 ...

  2. Java生成C#可用Model包

    项目需要提供接口给.NET团队使用,为方便大伙,特地写一个从Java接口生成C#可用Model包的工具Class 主Class是一个Controller,可以随时进行生成 package com.fa ...

  3. FetchType.LAZY 时属性加上@JsonIgnore,避免返回时报错:Could not write JSON: failed to lazily initialize a collection of role

    [示例] @OneToMany(fetch=FetchType.LAZY) @JsonIgnore @Fetch(FetchMode.SELECT) @Cascade(value={CascadeTy ...

  4. 文件名的查找——find

    查找文件!!! 命令格式:find [PATH] [option] [action] 一.参数1——与时间有关的参数 -atime.-ctime.-mtime -mtime n:在n天之前的“一天之内 ...

  5. JavaSE复习(五)网络编程

    客户端:java.net.Socket 类表示.创建Socket对象,向服务端发出连接请求,服务端响应请求,两者建立连接开始通信 服务端:java.net.ServerSocket 类表示.创建Ser ...

  6. [boost-2] 智能指针

    boost库学习: 智能指针: shared_ptr指针,定义在boost::shared_ptr,如果开发环境支持的话,可以使用memory中的std::shared_ptr. shared_ptr ...

  7. ASP.NET CORE 2.0 文档中文正式版已经出来了

    https://docs.microsoft.com/zh-cn/aspnet/core/

  8. iOS-UIImageView播放动画

    NSArray *gifArray = [NSArray arrayWithObjects:[UIImage imageNamed:@"lanya1"],[UIImage imag ...

  9. HDU 1338 Game Prediction

    http://acm.hdu.edu.cn/showproblem.php?pid=1338 Problem Description Suppose there are M people, inclu ...

  10. 玩转VFS(sys_open, overlayfs, rename)

    带着问题学习dentry 1)文件删除时 dentry的结构是如何变化的?是直接设置无效的吗?如果此时正好有个访问是在要删除目录下的一个文件,这咋办呢? 2)内核document目录下级联式地使用 d ...