Linux怎么修改文件时间

什么是文件时间

文件时间指的是创建时间、修改时间以及最近访问时间三个方面,Linux下每个文件都有这三个时间戳,分别记录文件的不同属性。其中,创建时间记录的是文件的初始创建时间,修改时间记录的是文件内容最后修改的时间,最近访问时间记录的是文件最后一次访问的时间。

查看文件时间

要查看文件的时间戳,可以使用ls命令,命令格式如下:

ls -l

执行该命令后,会显示文件的详细信息,其中第一列就显示了文件的时间戳。
例如:

-rw-r--r-- 1 root root 3451 2021-09-23 12:47 test.txt

第五列是文件的时间戳,第6列是文件名。

修改文件时间

在Linux系统下,有两种修改文件时间的方式,一种是使用touch命令,另一种是使用utime命令。

使用touch修改文件时间

使用touch命令修改文件时间,可以修改所有三个时间戳,其格式如下:

touch [-acdmt] [-r <参考文件或目录>] 文件名

-touch命令的常用选项:

  1. -a 只修改访问时间。
  2. -m 只修改修改时间。
  3. -t 后面接时间参数,修改为指定时间。
  4. -c 仅在文件原先不存在时,才创建新文件。
  1. 此外,还可以使用touch -r 参考文件 文件名的形式,将目标文件的时间修改为参考文件的时间。

  2. 另外,touch也支持同时修改多个文件的时间,只需要将多个文件名作为参数即可。例如:

    touch file1.txt file2.txt

使用utime修改文件时间

使用utime命令修改文件时间,也可以修改三个时间戳。utime命令的格式如下:

utime [-c] [-t 时间戳] 文件名

-utime命令常用选项:

  1. -c 仅在文件原先不存在时,才创建新文件。
  2. -t 后面接时间戳参数,修改为指定时间。

    时间戳可以使用如下命令来获取:”date -d “2021-09-23 12:47:00” +%s”,其中的时间可以替换为需要设置的时间。

修改一个文件的时间戳可以使用如下命令:

utime -t 202109231247.00 file.txt

此命令将file.txt的三个时间戳修改为2021年9月23日12点47分。

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享