Linux touch命令实例

2018-02-08 14:42:48 6806

touch命令可以用来修改文件的访问/修改时间戳。 更多的时候它会被用来快速创建一个空文件。

touch的一个很好的特性是,与一些诸如cp(用于复制文件和目录)和mv(用于移动或重命名文件和目录)的命令相比,它不会自动覆盖(即,擦除 )具有相同名称的现有文件的内容。 相反,它只是将这些文件的上次访问时间更改为当前时间。

在这篇文章中,我们将向您解释一些使用touch命令修改时间戳或创建文件的简单而快速的例子。

1.如何创建一个空白文件

要使用touch命令创建一个简单的空白文件,请使用以下语法。 如果您选择的文件名已经存在,则只需更改访问时间

linuxidc@linuxidc:~$ touch linuxidc.txt

2.如何创建多个文件

如果您想使用touch命令创建多个文件,只需输入带空格的扩展名的文件名即可。 你可以检查下面的语法。

linuxidc@linuxidc:~$ touch linuxidc_com.txt linuxmu.txt linuxidc_net.txt

3.如何用一个命令创建批量文件

如果您想要创建批量文件,例如20或30个文件,而不是扩展名。 下面的例子肯定会帮助你。 您可以使用命令ls或ll来检查文件是否被创建。由于我使用的是图形界面的,直接打开文件夹看看更直观吧。

1).创建名称为A到Z的文件

linuxidc@linuxidc:~$ touch {A..Z}

2).创建从1到100的文件

linuxidc@linuxidc:~$ touch {1..100}

3).创建带有扩展名的批量文件

linuxidc@linuxidc:~$ touch {2..200}.txt

4).创建具有扩展名的10000个文件

linuxidc@linuxidc:~$ touch {1..10}{1..1000}.txt

4.如何避免创建新文件

你只是想更新现有文件的访问时间? 是的,你当然可以做到这一点,而无需创建一个新的文件。 使用选项“-c”。 如果文件存在,touch将更新访问时间,否则什么都不会做。

linuxidc@linuxidc:~$ touch -c linuxidc.txt

5.如何更改文件的访问时间

要仅更改文件的访问时间,请使用“-a”选项和文件名。 你可以检查下面的例子。

linuxidc@linuxidc:~$ touch -a linuxidc.txt

一旦你完成上述命令,检查是否被改变? 尝试下面的命令。

linuxidc@linuxidc:~$ stat linuxidc.txt

输出如下所示。

文件:linuxidc.txt

大小:0         块:0          IO 块:4096  普通空文件

设备:804h/2052d Inode:1451165    硬链接:1

权限:(0644/-rw-r--r--)  Uid:( 1000/linuxidc)  Gid:( 1000/linuxidc)

最近访问:2018-02-06 20:17:54.730291896 +0800

最近更改:2018-02-06 20:17:26.434083956 +0800

最近改动:2018-02-06 20:17:54.730291896 +0800

创建时间:-

6.如何更改修改时间

使用'-m'选项来更改文件的修改时间。 你可以用stat命令检查下面的时间变化。

linuxidc@linuxidc:~$ touch -m linuxidc.txt

一旦你完成上述命令,检查是否被改变? 尝试下面的命令。

linuxidc@linuxidc:~$ stat linuxidc.txt

输出如下所示。

文件:linuxidc.txt

大小:0         块:0          IO 块:4096  普通空文件

设备:804h/2052d Inode:1451165    硬链接:1

权限:(0644/-rw-r--r--)  Uid:( 1000/linuxidc)  Gid:( 1000/linuxidc)

最近访问:2018-02-06 20:17:54.730291896 +0800

最近更改:2018-02-06 20:19:51.999315295 +0800

最近改动:2018-02-06 20:19:51.999315295 +0800

创建时间:-

7.如何更改多个文件的修改时间

使用通配符更改多个文件的修改时间。

linuxidc@linuxidc:~$ touch -m *.txt

8.如何使用访问和修改时间选项

我们一起使用“a”和“m”选项来修改访问和修改时间。 您还可以使用“stat”命令检查更改的时间戳。

linuxidc@linuxidc:~$ touch -am linuxidc.txt

一旦你完成上述命令,检查是否被改变? 尝试下面的命令。

linuxidc@linuxidc:~$ stat linuxidc.txt

输出如下所示。

文件:linuxidc.txt

大小:0         块:0          IO 块:4096  普通空文件

设备:804h/2052d Inode:1451165    硬链接:1

权限:(0644/-rw-r--r--)  Uid:( 1000/linuxidc)  Gid:( 1000/linuxidc)

最近访问:2018-02-06 20:24:56.038676993 +0800

最近更改:2018-02-06 20:24:56.038676993 +0800

最近改动:2018-02-06 20:24:56.038676993 +0800

9. 如何设置访问/修改的特定时间

要将访问/修改时间设置为特定的日期时间,请使用t选项并以此格式指定日期时间((CC)YY)MMDDhhmm.(ss)

touch命令的选项列表

-a - 更改文件的访问时间

-c - 如果不存在,不要创建指定的文件。

-m - 改变文件的修改时间。

-r --ref_file使用由ref_file命名的文件的相应时间而不是当前时间。

-t - time使用指定的时间而不是当前的时间。 时间将是表格的十进制数字

MM - 一年中的月份[01-12]

DD - 每月的一天[01-31]

hh - 一天中的小时[00-23]

mm - 小时的分钟[00-59]

CC - 年份的前两位数字

YY - 年份的后两位数字

SS - 第二分钟[00-61]

linuxidc@linuxidc:~$ touch -c -t 201802062036.18 linuxidc.txt

10.如何使用另一个文件的时间戳作为参考

以下命令将linuxmi.txt的访问/修改时间设置为linuxidc.txt的访问/修改时间

linuxidc@linuxidc:~$ touch -r linuxidc.txt linuxmi.txt

11.如何指定日期和时间作为字符串

除了选项“t”之外,还有另外一个选项“-d”,它接受一般人类可读格式的日期时间。

以下示例仅提供日期。 时间将自动设置为00:00

linuxidc@linuxidc:~$ touch -c -d '18 Aug' linuxidc.txt

提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: