📜  Linux 中的 touch 命令及示例(1)

📅  最后修改于: 2023-12-03 14:43:56.995000             🧑  作者: Mango

Linux 中的 touch 命令及示例

touch 命令在 Linux 中是一个用于创建新文件,或更新已有文件的时间戳的实用工具。它的使用方法相当简单而又非常实用。

基本语法
touch [选项]... 文件...

选项:

  • -a:将只更新访问时间而不更改修改时间。
  • -c:仅在文件存在时才会更新文件的时间戳。
  • -d:使用指定的日期或时间来更新文件的时间戳。
  • -h:仅对符号链接进行操作,而不是链接所指向的文件。
  • -m:仅更新修改时间而不更改访问时间。
  • -r:使用指定文件的时间戳更新当前文件的时间戳。
  • -t:使用指定的日期或时间戳来更新文件的时间戳。
  • --help:显示帮助信息并退出。
  • --version:显示版本信息并退出。
示例
创建一个新文件

使用 touch 命令,你可以创建一个新文件:

$ touch newfile.txt

如果文件不存在,则将创建一个新文件。如果文件已经存在,则将更新该文件的访问和修改时间戳。

更新一个已有文件

要仅更新文件的时间戳,并保留文件的内容不变,可以使用 touch 命令:

$ touch myfile.txt

这将更新 myfile.txt 文件的访问和修改时间戳。如果该文件不存在,则将创建一个新文件。

使用自定义时间戳更新文件

使用 -t-d 选项更新文件的时间戳。下面是一些示例:

# 使用指定的时间戳更新文件时间戳
$ touch -t 202101011200.00 myfile.txt

# 使用指定的日期和时间更新文件时间戳
$ touch -d '2021-01-01 12:00:00' myfile.txt
更新符号链接文件的时间戳

使用 -h 选项可以仅对符号链接进行操作,而不是链接所指向文件的时间戳。

$ touch -h myfilelink.txt

myfilelink.txt 是指向另一个文件的符号链接,该命令将仅更新符号链接文件的访问和修改时间戳。

仅更新修改时间戳或访问时间戳

使用 -m-a 选项可以更新文件的修改或访问时间戳。

# 仅更新修改时间戳
$ touch -m myfile.txt

# 仅更新访问时间戳
$ touch -a myfile.txt
将文件的时间戳设置为另一个文件的时间戳

使用 -r 选项,将文件的时间戳设置为另一个文件的时间戳。

# 使用指定的文件的时间戳更新当前文件的时间戳
$ touch -r ref_file.txt myfile.txt

以上便是使用 touch 命令的一些常见示例,这个工具不仅方便,而且非常实用,特别是在需要在保留文件内容不变的同时更新文件时间戳的情况下。