Linux - 文件时间戳

  1. 概述

    1. 简介 linux 文件时间戳
  2. 背景

    1. 最近感觉很消极的样子
      1. 心情不好加不知道写啥
    2. 随便水一水
      1. 能水的就那么多, 水一次, 少一次
  3. 环境

    1. os
      1. centos7

1. 时间戳

  1. 概述

    1. 简述 时间戳
  2. linux 的文件结构

    1. 组成
      1. inode
        1. 记录文件元数据
      2. 数据
        1. 记录文件内容
  3. 时间戳

    1. 位置

      1. inode 中
    2. 机制

      1. 创建
        1. 文件创建时, 三个时间相同
      2. 改变
        1. 执行特定的动作, 会触发相应时间的改变
    3. 内容

      1. atime(access)
        1. 访问时间
          1. 文件被读取到 内存 里, 就会改变这个时间
          2. 如果没有读, 直接 append 到文件, atime 不会变
      2. ctime(change)
        1. 改变时间
          1. inode 内容发生变化时, 这个值会更新
      3. mtime(modify)
        1. 编辑时间
          1. 文件的内容发生变化, 就会改变这个时间
          2. 通常修改文件内容, 也会导致文件元数据变更, ctime 也会变化

2. 查看 inode

  1. 命令

    # 里面内容很是丰富, 但基本是一看就懂的东西, 我就多说了
    > stat <fileName>
    
  2. 关于 birth

    1. 解释
      1. stat 命令下, 可能会有一个叫做 birth 的字段
        1. 但是这个字段, 为空
      2. 这个是正常情况
        1. linux 的 inode 不会记录文件的创建时间

3. 作用

  1. 场景
    1. ls -l

      1. 默认

        1. 显示 mtime
        2. 按 名称排序
      2. -lt

        1. 显示 mtime
        2. 按 mtime 降序排列
      3. -lu

        1. 显示 atime
        2. 可以搭配 -t 排序
        3. u 是 use 的意思
      4. -lc

        1. 显示 ctime
        2. 可以搭配 -t 排序
      5. -r

        1. 倒排
    2. find

      1. 这个不太熟, 就不细说了

ps

  1. ref

    1. Linux系统stat指令用法
    2. atime, ctime and mtime in Unix filesystems
  2. 后续

    1. cron
    2. find
posted @ 2019-12-09 11:09  轩辕拾銉  阅读(453)  评论(0编辑  收藏  举报