Linux touch命令的使用

用touch修改某文件的时间戳到当前时刻

xinlin@ubuntu:~$ ll test
-rwxrw-r-- 1 xinlin xinlin 34 Sep 17 21:49 test*
xinlin@ubuntu:~$ touch test
xinlin@ubuntu:~$ ll test
-rwxrw-r-- 1 xinlin xinlin 34 Sep 24 01:55 test*
xinlin@ubuntu:~$

 

用touch修改某文件的时间戳到任意时刻

要使用-t参数。

-t就是time,使用指定的时间值作为指定文件相应时间戳记的新值.此处的time规定为如下形式的十进制数: [[CC]YY]MMDDhhmm[.SS]
这里,CC为年数中的前两位,即”世纪数”;YY为年数的后两位,即某世纪中的年数.如果不给出CC的值,则touch将把年数CCYY限定在1969--2068之内.MM为月数,DD为天将把年数CCYY限定在1969--2068之内.MM为月数,DD为天数,hh 为小时数(几点),mm为分钟数,SS为秒数.此处秒的设定范围是0--61,这样可以处理闰秒.这些数字组成的时间是环境变量TZ指定的时区中的一个时 间。

由于系统的限制,早于1970年1月1日的时间是错误的。

xinlin@ubuntu:~$ ll test
-rwxrw-r-- 1 xinlin xinlin 34 Sep 24 01:55 test*
xinlin@ubuntu:~$ touch -t 201211040825.30 test
xinlin@ubuntu:~$ ll test
-rwxrw-r-- 1 xinlin xinlin 34 Nov 4 2012 test*
xinlin@ubuntu:~$

 

用touch命令创建长度为0的文件

xinlin@ubuntu:~$ touch tt1
xinlin@ubuntu:~$ touch tt2
xinlin@ubuntu:~$ ll tt*
-rw-rw-r-- 1 xinlin xinlin 0 Sep 24 02:42 tt1
-rw-rw-r-- 1 xinlin xinlin 0 Sep 24 02:42 tt2
xinlin@ubuntu:~$ cat tt1
xinlin@ubuntu:~$ cat tt2

只要touch命令后面接的文件名不存在即可。

也可以使用-c参数来规避创建长度为0的文件

xinlin@ubuntu:~$ touch -c tt3
xinlin@ubuntu:~$ ll tt*
-rw-rw-r-- 1 xinlin xinlin 0 Sep 24 02:42 tt1
-rw-rw-r-- 1 xinlin xinlin 0 Sep 24 02:42 tt2
xinlin@ubuntu:~$

看到tt3文件,就是没有创建。

用touch命令是某个文件的时间戳跟另一个文件一样

要使用-r参数,而且要修改的文件必须存在。

xinlin@ubuntu:~$ touch tt3
xinlin@ubuntu:~$ ll tt*
-rw-rw-r-- 1 xinlin xinlin 0 Sep 24 02:42 tt1
-rw-rw-r-- 1 xinlin xinlin 0 Sep 24 02:42 tt2
-rw-rw-r-- 1 xinlin xinlin 0 Sep 24 02:45 tt3
xinlin@ubuntu:~$ touch -r tt3 tt1   #将tt1的时间戳修改为跟tt3一样
xinlin@ubuntu:~$ ll tt*
-rw-rw-r-- 1 xinlin xinlin 0 Sep 24 02:45 tt1
-rw-rw-r-- 1 xinlin xinlin 0 Sep 24 02:42 tt2
-rw-rw-r-- 1 xinlin xinlin 0 Sep 24 02:45 tt3
xinlin@ubuntu:~$

posted @ 2017-10-31 10:23  王能武  阅读(8685)  评论(0编辑  收藏  举报