当前位置: 首页 > article >正文

Linux 文件的三个时间:Access、Modify 和 Change

        

目录

一、文件的三个时间戳

1. 访问时间(Access Time)

2. 修改时间(Modify Time)

3. 更改时间(Change Time)

二、如何查看文件的三个时间戳

三、文件时间戳的变化规则

1. 修改文件内容

2. 修改文件属性

3. 访问文件

四、如何更新文件的三个时间戳


        在 Linux 系统中,每个文件都包含三种重要的时间戳信息:访问时间(Access)修改时间(Modify)更改时间(Change)。这些时间戳可以帮助我们了解文件的使用情况和历史记录。

一、文件的三个时间戳

1. 访问时间(Access Time)

定义

        访问时间是指文件最后一次被访问的时间。这里的“访问”通常指读取文件内容的操作,例如使用 catless 或其他读取文件的命令。

用途

        访问时间可以帮助我们了解文件的使用频率和最近一次被查看的时间。

2. 修改时间(Modify Time)

定义

        修改时间是指文件内容最后一次被修改的时间。这里的“修改”是指对文件内容的更改,例如使用 echovim 或其他编辑工具修改文件内容。

用途

        修改时间可以帮助我们了解文件内容的更新情况,例如判断某个文件是否需要重新编译或重新处理。

3. 更改时间(Change Time)

定义

        更改时间是指文件属性最后一次被修改的时间。这里的“属性”包括文件的权限、所有者、inode 等信息。更改时间通常在修改文件元数据时更新,例如使用 chmodchowntouch 命令。

用途

        更改时间可以帮助我们了解文件的元数据是否发生了变化,例如权限是否被修改。

二、如何查看文件的三个时间戳

        在 Linux 中,我们可以使用 stat 命令查看文件的详细信息,包括三个时间戳。stat 命令的语法如下:

stat <文件名>

示例

假设我们有一个文件 example.txt,我们可以使用以下命令查看它的详细信息:

touch example.txt  # 创建一个空文件
stat example.txt  # 查看文件信息

输出结果如下

从输出中可以看到:

  • Access:文件最后被访问的时间。

  • Modify:文件内容最后被修改的时间。

  • Change:文件属性最后被修改的时间。

三、文件时间戳的变化规则

1. 修改文件内容

        当我们修改文件内容时,Modify 时间戳会更新,同时 Change 时间戳也会更新。这是因为修改文件内容通常会导致文件的 inode 信息发生变化。

示例

echo "Hello, World!" > example.txt  # 修改文件内容
stat example.txt  # 查看文件信息

输出结果如下

可以看到,ModifyChange 时间戳都更新了。

2. 修改文件属性

        当我们修改文件属性时,例如权限或所有者,Change 时间戳会更新,但 Modify 时间戳不会更新。这是因为修改文件属性不会改变文件的内容。

示例

chmod 755 example.txt  # 修改文件权限
stat example.txt  # 查看文件信息

输出结果如下

可以看到,Change 时间戳更新了,但 Modify 时间戳没有变化。

3. 访问文件

        当我们访问文件时,例如使用 catless 命令查看文件内容,Access 时间戳会更新,但 ModifyChange 时间戳不会更新。

示例

cat example.txt  # 查看文件内容
stat example.txt  # 查看文件信息

输出结果如下

可以看到,Access 时间戳更新了,但 ModifyChange 时间戳没有变化。

四、如何更新文件的三个时间戳

        如果我们希望将文件的三个时间戳都更新到最新状态,可以使用 touch 命令。touch 命令的语法如下:

touch <文件名>

示例

touch example.txt  # 更新文件时间戳
stat example.txt  # 查看文件信息

输出结果如下:

可以看到,AccessModifyChange 时间戳都更新了。


http://www.kler.cn/a/558005.html

相关文章:

  • 14.7 LangChain Experimental 模块解析:解锁 Auto-GPT 开发新范式
  • tcpdump 用法示例
  • 动态订阅kafka mq实现(消费者组动态上下线)
  • 在windows10上基于Python部署marker,实现PDF转markdown文件(保姆级)
  • ue5地面上出现preview字样
  • 小程序(物流、快递),接入GPS北斗获取路线以及当前车辆位置
  • 【后端】gitHub访问速度太慢解决办法
  • UE5.3 C++ TArray系列(一)
  • 【Python爬虫(43)】云端探秘:Python分布式爬虫部署攻略
  • Jenkins 自动构建Job
  • 14.5 基于LangChain重构Auto-GPT:新一代自主智能体架构设计实践
  • 当前 Java Web 开发的最新实现方式
  • 【复习】计算机网络
  • Spring Boot Validation 接口校验:从零到掌握
  • STM32 HAL库I2C函数使用详解:以MPU6050传感器为例
  • Windows 系统下,使用 PyTorch 的 DataLoader 时,如果 num_workers 参数设置为大于 0 的值,报错
  • Apache-CC6链审计笔记
  • PWR电源控制详解教程文章 ~内置初始化驱动代码!!!
  • 网络安全风险事件排名 网络安全事件划分
  • 网络运维学习笔记 012网工初级(HCIA-Datacom与CCNA-EI)某机构新增:GRE隧道与EBGP实施