理解 atime,ctime,mtime (上)

Unix文件系统会为每个文件存储大量时间戳。这意味着您可以使用这些时间戳来查找任意时间访问到的任何文件或目录(读取或写入),更改(文件访问权限更改)或修改(写入)。

# 前言

之前写过一篇 find 命令的文章 关于 ‘--exec’ 参数( find 命令)及介绍 ‘xargs ’命令区别 ,阅读量炒鸡高。正好现在在培训 RHCE,讲师跟我们说在 Linux 中有三个概念非常重要。那我就把这个点深度挖掘,结合 find 也给大家聊聊。

  • access time – atime

    • 文件访问时间 - 显示上次访问文件数据的时间。由Unix进程直接读取或通过命令和脚本。
  • change time – ctime
    • 文件改变时间 - 更改文件的所有权或访问权限ctime 也会更改。它也将自动突出显示最后一次文件的内容更新。
  • modify time – mtime
    • 显示上次更改文件内容的修改时间,它不会随所有者或权限更改而改变。用于跟踪文件本身的数据更改。

# 例子

一、查询命令 ls

1、文件修改时间(File Modify Time)

图1-1

图1-1显示的即为文件最后修改时间:Jul 28 18:05

2、文件访问时间(File Access Time)

图1-2

图1-2显示的即为文件最后访问时间:Aug 7 12:27

3、文件改变时间 (File Change Time)

图1-3

**如图1-3显示的即为文件最后改变时间:Aug 7 16:23 **

二、综合命令 stat

通过 stat 可以快速了解一个文件详细信息。

三、修改命令 touch

touch [-acfm][-d <日期时间>][-r <参考文件或目录>][-t <日期时间>][--help][--version][文件或目录...]

或 touch [-acfm][--help][--version][日期时间][文件或目录...]

命令参数:

-d 使用指定的日期时间。
-a 只更改存取时间access
-m 只更改变动时间modify
-t 使用纯数字模式 [[CC]YY]MMDDhhmm[.ss] 替换日期

使用举例

--------------------------------------------

touch -m -d "2016-05-20 14:25:50" file
// 仅按照时间(-d)改变文件修改时间(-m)
touch -d "2016-05-20 14:25:50" file
touch -d "2016-05-20" file
touch -d "14:25:50" file
或者
touch -t 201605201315.50 file
// 按照 [[CC]YY]MMDDhhmm[.ss] 模式修改
touch -t 05201315 file

四、查询命令 find

1、选项

  • 以天为单位

    • -mtime
    • -atime
    • -ctime
  • 以分钟为单位
    • -mmin
    • -amin
    • cmin

2、选项

  1. +n: 大于n
  2. -n: 小于n
  3. n:等于n

# 结文:

本文基本理清楚三种概念。find 上还没有做演示,以及具体命令会修改那些时间还未讲清楚。

关注微信公众号(ITer奋斗点滴)回复:acm

得到最终版。

理解 atime,ctime,mtime (上)的更多相关文章

  1. 理解 atime,ctime,mtime (下)

    话不多说,开始下篇. # 前言 通过 "理解 atime,ctime,mtime (上)" 我们已经知道了atime 是文件访问时间:ctime是文件权限改变时间:mtime是文件 ...

  2. linux下find命令-atime,-ctime,-mtime真正含义

    linux下的-atime,-ctime,-mtime含义我们经常会在论坛或者群里面被问到,在linux或者unix下如何查看某文件的创建日期?经常又会有人说用find命令加选项-ctime,其实这里 ...

  3. find命令下的atime,ctime,mtime

    Linux下的find命令在目录结构中搜索文件,并执行指定的操作.linux下的find命令提供了相当多的查找条件,功能很强大,由于find的功能很强大,所以他的选项也很多,今天我们来细说一下find ...

  4. find命令之(-atime,-ctime,-mtime)

    关于find命令,以拙见总结如下: >>>定义: find命令用来在指定目录下查找文件. 任何位于参数之前的字符串都将被视为欲查找的目录名.如果使用该命令时,不设置任何参数,则fin ...

  5. linux atime ctime mtime

    touch testtime 1. stat testtime[为文件名] 可以查看这个文件名的三者状态 2.ll testtime;ll --time=atime testtime ;ll --ti ...

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

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

  7. Find–atime –ctime –mtime的用法与区别总结

    转自 周五有同事问起find命令中-mtime n.-mtime –n以及-mtime +n的用法区别,当时虽然记得这里n是n个24个小时的意思,也是对所有这几个属性详细的用法却一知半解,索性周末仔细 ...

  8. python os模块atime ,ctime,mtime意义

    ython的os.stat中主要的时间信息有三个:st_mtime,st_atime,st_ctime.   1.st_mtime:time of last modification      最后一 ...

  9. Linux常用命令之 查找命令 find —— 细说 -atime,-mtime,-ctime

    我们知道 Linux里面一切皆文件 ,那么我们能否查看一个文件是何时创建的呢?答案是否定的.那我们可以知道些文件关于时间的什么信息呢?那就不得不说文件状态的三个时间了,它们分别是 -atime, -c ...

随机推荐

  1. git 查询某人的提交记录

    git log --author=liubo --name-only

  2. Undo Architecture

    [Undo Architecture] NSUndoManager is a general-purpose recorder of operations for undo and redo. NSU ...

  3. openstack网络管理命令

    1.获取网络列表 [root@cc ~(keystone_admin)]# neutron net-list +--------------------------------------+----- ...

  4. 安装Android SDK Manager的“Failed to fetch refused”问题解决方法

    安装Android SDK Manager的"Failed to fetch refused"问题解决方法 一见 2014/11/11 问题现象: 步骤一:修改hosts文件(wi ...

  5. Duplicate Symbol链接错误的原因总结和解决方法[转]

    from:http://www.cocoachina.com/bbs/read.php?tid=177492 duplicate symbol是一种常见的链接错误,不像编译错误那样可以直接定位到问题的 ...

  6. 基于微软XAML技术的前端开发方法

    使用XAML技术的平台目前包括WPF,Silverlight,Windows8等平台,未来的Windows10统一Windows App也使用XAML技术. 前端开发指通过可视化集成开发环境进行用户界 ...

  7. [转]RTH试用手记之“额外功能”

    年初,罗德与施瓦茨公司(Rohde & Schwarz)推出了第一款的手持示波器,从指标上看,该示波器打破了传统手持器功能简单.指标水平低.结构粗糙的印象,取而代之达到了主流台式数字示波器的性 ...

  8. shell中调用jenkins API批量运行历史任务

    shell中调用jenkins API批量运行jenkins带参数的任务: #!/bin/sh #startdate=20150127 startdate=20150201 while [ " ...

  9. Flex 布局里 input 宽度最小 150px 的问题, 浏览器 BUG?

    今天在使用 flex 布局时, 发现当 flex 布局容器比小(小于 150px )时,里面的 input[text] 的宽度会比容器宽: <style> #main { width:12 ...

  10. system.data.oracleclient 需要 8.17 需要oracle客户端问题

    1.下载 2.程序引用   Oracle.DataAccess.dll  其他引用放在debug下