|
|
|
|
移动端

Linux touch命令实例图文详解

touch命令可以用来修改文件的访问/修改时间戳。 更多的时候它会被用来快速创建一个空文件。在这篇文章中,我们将向您解释一些使用touch命令修改时间戳或创建文件的简单而快速的例子。

作者:Linux公社来源:Linux公社|2018-02-07 09:25


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

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

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

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

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

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

  1. linuxidc@linuxidc:~$ touch linuxidc.txt 

2.如何创建多个文件

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

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

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

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

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

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

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

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

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

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

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

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

如下图:

打开文件夹看看:

4.如何避免创建新文件

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

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

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

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

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

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

  1. 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命令检查下面的时间变化。

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

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

  1. 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.如何更改多个文件的修改时间

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

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

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

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

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

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

  1. 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] 
  1. linuxidc@linuxidc:~$ touch -c -t 201802062036.18 linuxidc.txt 

注意:如果省略了c选项,如果不存在,则会使用给定的日期时间创建新文件。

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

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

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

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

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

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

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

如下图:

总结

在这篇文章中,我们介绍了应该更频繁使用的基本touch命令。 您可以从其手册页搜索更多的命令选项。

本文永久更新链接地址:http://www.linuxidc.com/Linux/2018-02/150800.htm

【编辑推荐】

  1. 带你了解Linux与Unix之差异
  2. 为什么应该在Linux上使用命名管道
  3. 如何在Linux系统查询机器最近重启时间
  4. 在Linux上检测IDE/SATA SSD硬盘的传输速度
  5. 八种在Linux上生成随机密码的方法
【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

游戏关卡设计

《半条命》作者倾心写就 暴雪总裁等业内专家强力推荐 盛大公司专业团队翻译 一起来创造引人入胜的游戏体验吧! 任何精彩游戏的核心部分...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊