在Linux中,每个文件都与时间戳相关联,每个文件都存储着最后访问时间、最后修改时间和最后更改时间的信息。因此,每当我们创建新文件并访问或修改现有文件时,该文件的时间戳都会自动更新。

在本文中,我们将介绍一些有用的Linux touch命令的实际示例。touch命令是Unix/Linux操作系统的标准程序,用于创建、更改和修改文件的时间戳。
在开始touch命令示例之前,请查看以下选项。
Touch命令选项
- -a,仅更改访问时间
- -c,如果文件不存在,则不创建
- -d,更新访问和修改时间
- -m,仅更改修改时间
- -r,使用文件的访问和修改时间
- -t,使用指定时间创建文件
1. 如何创建空文件
以下touch命令创建一个名为sheena的空(零字节)新文件。
# touch sheena
2. 如何创建多个文件
使用touch命令,您也可以创建多个文件。例如,以下命令将创建3个文件,分别命名为sheena、meena和leena。
# touch sheena meena leena
3. 如何更改文件访问和修改时间
要更改或更新名为leena的文件的最后访问和修改时间,请使用-a选项,如下所示。以下命令会将当前时间和日期设置在文件上。如果leena文件不存在,则会创建一个新的空文件。
# touch -a leena
最流行的Linux命令,例如find命令和ls命令,使用时间戳进行文件列表和查找文件。
4. 如何避免创建新文件
使用-c选项与touch命令可以避免创建新文件。例如,如果不存在,以下命令将不会创建名为leena的文件。
# touch -c leena
5. 如何更改文件修改时间
如果您想修改名为leena的文件的唯一修改时间,则使用-m选项与touch命令。请注意,这将只更新文件的最后修改时间(而不是访问时间)。
# touch -m leena
6. 明确设置访问和修改时间
您可以使用-c和-t选项与touch命令明确设置时间。格式如下。
# touch -c -t YYDDHHMM leena
例如,以下命令将文件leena的访问和修改日期时间设置为当前年份2020的12月10日的17:30(下午17:30)
# touch -c -t 12101730 leena
然后,使用ls -l命令验证文件leena的访问和修改时间。
# ls -l total 2 -rw-r--r--. 1 root root 0 Dec 10 17:30 leena
7. 如何使用另一个文件的时间戳
以下带有-r选项的touch命令将文件meena的时间戳更新为文件leena的时间戳。因此,两个文件都具有相同的时间戳。
# touch -r leena meena
8. 使用指定的时间创建文件
如果您想创建一个具有指定时间而不是当前时间的文件,则格式应如下。
# touch -t YYMMDDHHMM.SS tecmint
例如,以下带有-t选项的touch命令将tecmint文件的时间戳设置为2020年12月10日的下午18:30:55。
# touch -t 202012101830.55 tecmint
我们几乎覆盖了“touch”命令中所有可用选项,要获取更多选项,请使用“man touch”。如果我们仍然漏掉了任何选项,并且您希望将它们包括在此列表中,请通过评论框通知我们。
Source:
https://www.tecmint.com/8-pratical-examples-of-linux-touch-command/