咱们或许在 Linux 下运用 touch 指令创立一个空文件。当然咱们也能够运用其他指令例如 vi, nano 或是恣意一个修正东西来完结。可是你或许需求更多的过程来完结操作。其实你要知道 touch 指令的首要功能并不是为了创立一个空文件哦。
什么是 touch 指令
众所周知,每个文件都被附有时刻戳。这个时刻戳记包含拜访时刻和修正时刻。而 Touch 指令首要便是用来修正文件的拜访时刻和修正时刻。
为什么咱们需求运用 touch 指令
已然 touch 指令描绘的是改动时刻戳,那么咱们或许会想为什么咱们需求去改动时刻戳呢?这个问题会引发咱们的沉思。可是,我想有个理由能够解说为什么咱们需求运用它。假设你参加了一个全球规模的开源项目,那么时刻戳或许变得很重要。编译源代码文件或许需求同一区域的时刻戳。假设未一致,程序或许会编译失利。(译注:有强迫症的同学也很喜欢这个指令——就看不得杂乱无章的时刻,;>)
不带任何选项下运转 touch
最简略的运用 touch 指令。只需键入:
$ touch file_name
请调查下面的一张截图。
File_1.txt本来的时刻戳是 12:42。在咱们运用 touch 指令后,它改动为了 17:08。由此看出,默许情况下,touch 会将文件的时刻戳改为当时时刻。
只改动拜访时刻
正如咱们之前说到的,每个文件都附有拜访时刻和修正时刻。上面的时刻戳是 17:08。咱们能够看更多的细节。
咱们发现拜访时刻和修正时刻的值是相同的都是 17:08:35 ,还有它们归于同一时区 GMT +7。
假设现在咱们要只改动拜访时刻,咱们需求运用-a选项。
$ touch -a file_1.txt
如你所见,拜访时刻变为了 17:51:37 ,可是修正时刻仍为17:08:35。[译注:原文为 Change time(状况改动时刻)应是作者笔误]
只改动修正时刻
咱们能够运用-m选项来完结。现在咱们用file_2.txt作个示例。
$ touch -m file_2.txt
现在修正时刻从 12:42:20 改为了 17:57:20。请注意,当文件被拜访或修正时,状况改动时刻域的值总会对其记载。
更改为自定义时刻戳
-a和-m选项都会将文件的时刻戳改为现在当时时刻。当然咱们也能够更改为自定义时刻戳。运用-t选项完结。
从上面示例示例中的 file_2.txt,咱们看出它的时刻戳是:
拜访时刻:12:42:20
修正时刻:17:57:20
履行日期:2014-01-14
假设咱们想要将拜访时刻和修正时刻改为2014年1月12日 09:58:27。咱们能够用下列指令来完结:
$ touch -t 201401120958.27 file_2.txt
-t 选项语法组成 :
[[CC]YY]MMDDhhmm [.SS]
CC – 年份的前两位
YY – 年份的后两位
MM – 月份 [01-12]
DD – 日期 [01-31]
hh – 时 [00-23]
mm – 分 [00-59]
SS – 秒 [00-61]
改动日期和时刻的另一种方法
假设你觉得[[CC]YY]MMDDhhmm [.SS]格局不适合你,咱们也能够运用 -d 选项。下面是-d选项运用的一个示例。
更改指定日期
举例来说,咱们有个名为 file_3.txt 的文件,它的相关特点鄙人面的截图中展现了。
现在咱们要将日期2014年1月14日改为2013年12月20日。能够运用下列指令:
$ touch -d ’10-December-2013′ file_3.txt
不出预料,拜访时刻和修正时刻的日期现已改为了2013年12月10日。
改动时区
假设咱们想改动指定GMT的时刻,咱们也能够运用-d选项。先让file_3.txt 移回当时时刻。
$ touch file_3.txt
不难发现 file_3.txt 的时区为 GMT +0700。要改为 GMT3 时区,咱们只需求键入如下指令:
$ touch -d GMT3 file_3.txt
好的,现在时刻现已改为了 10:00:00 AM。
结合参数下运用-d选项
还能够用很帅的方法运用-d选项。请调查下面的图片。