【Linux指令】Centos7 touch修改Access/Modify/Change 时间与恢复系统时间

前言

本篇主要讲解touch与时间相关的操作,关于touch创建文件,就不再赘述。

正文

1. 查看文件状态

stat 【文件】

比如我创建了一个:test.c文件,使用此命令查看此文件属性。

在这里插入图片描述

与时间相关的信息:

在这里插入图片描述
其余信息(了解即可):

在这里插入图片描述

  • 总结时间分为四类:
  1. 文件最近一次被访问的时间
  2. 文件最近一次被修改的时间
  3. 文件最近一次被改变的时间
  4. 文件的创建时间

 我最开始的时候还疑惑,文件的创建信息为啥不给出呢?

在网上找到这样一条解释的通的评论:

在这里插入图片描述

大意为:有些版本支持(新),有些版本不支持(老),但是由于系统调用接口不明确的问题,Linux系统就没有明确的指出Birth Time,反而用了一个 - 来表示一个未知的时间,即使系统内部放有birth time。

  • 补充: 文件创建时间也可用crtime/otime(不同的文件系统)

 既然stat无法表示出文件的创建时间,那有没有指令能表示出系统的创建时间呢?
——是有的。

在支持ext4的情况下,我们可以这样查找。

  1. 首先先看当前操作系统是否支持ext4。
df -T

在这里插入图片描述
2. 查看文件的索引结点

 可以直接用stat查看也可以用:

ls -i 【文件名】

在这里插入图片描述

  1. 用索引结点查看crtime(需要root权限/切换到root用户)
sudo debugfs -R 'stat <索引结点编号>' /dev/vda1

在这里插入图片描述

OK,基本的时间状态已经掌握,那么我们来继续修改文件的时间状态吧!

2.只更新Access Time

touch -a 【文件】

在这里插入图片描述

  • 说明:只要修改了test.c的内容,Change时间就会更新到当前时间。

2.只更新Modify Time

touch -m 【文件】

在这里插入图片描述

3. 修改Acess Time 与Modify Time为指定时间

时间有两种格式:

  1. 标准的时间格式——“2023-09-14 08:55:42”
  2. 较为粗略的时间格式 —— “20230914 08:55:42”
  3. 粗略的时间格式——202309140855.42

修改atime与mtime有两种方法:

touch -d 【标准的时间格式】 【文件】

在这里插入图片描述

touch -t 【粗略的时间格式】 【文件】

在这里插入图片描述

4. 修改Change时间

说明:一般情况下是修改不了Change时间的,因为Change时间是随着系统时间的改变而改变的,因此我们需要修改系统时间,再对原文件进行一次操作即可。

  1. 修改系统时间
sudo date -s 【粗略的时间】

在这里插入图片描述

  1. 对原文件用touch指令再次操作

这里我就接着上面的date -t之后的结果继续操作了,其实这里要看实际需要。

touch -t 【粗略的时间格式】 【文件】

在这里插入图片描述

5. 恢复系统时间

时间分为:
1 . 硬件时间
2. 系统时间(date查看就是)

从硬件时间恢复系统时间。

sudo hwclock --hctosys

注意:可能系统时间与硬件时间不同,修改系统时间应查看一下。

sudo hwclock --show && date +"%F %H:%M:%S"

在这里插入图片描述

  • 说明:touch + 【文件】可更新文件时间为当前时间。这里我看了一下是没错的。

啥?硬件时间都修改了。没事只要有网,那就还有办法。

从网络中恢复系统时间。

  1. 安装包 ntpdate
sudo yum -y install ntp ntpdate
  1. 停止相关服务
service ntp stop
  1. 设置网络时间
ntpdate cn.pool.ntp.org
  1. date查看时间
date +"%F %H:%M:%S"

总结

 最近在复习touch指令的时候,选项搞懵逼了,不同的选项,时间格式可能并不并不相同,因此一直会出现无效时间格式的提示,特意写了一篇博客总结一下,希望对大家有所帮助!

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值