路漫漫其修远兮
吾将上下而求索

linux修改时间:touch 命令

      touch命令不常用,一般在使用make的时候可能会用到,用来修改文件时间戳,或者新建一个不存在的文件。

1.命令格式:  

       touch [选项]… 文件…

2.命令功能:

       touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间。 

3.命令参数:

        -a   或–time=atime或–time=access或–time=use  change only the access time

        -c   或–no-create  不建立任何文档。

        -d,–date=STRING 使用指定的日期时间,而非现在的时间。

        -f  此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。

        -m   或–time=mtime或–time=modify  change only the modification time

        -r,–reference=FILE 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。

        -t STAMP    use [[CC]YY]MMDDhhmm[.ss] instead of current time

4. 常用范例:

例1:创建不存在的文件,一个或者多个

[root@localhost ~]#ls
a.txt  c  d
[root@localhost ~]#touch test
[root@localhost ~]#ls
a.txt  c  d  test

[root@localhost ~]#touch test1 test2
[root@localhost ~]#ls
a.txt  c  d  test  test1  test2

例2:将文件test2和文件c的时间戳更新为当前时间

[root@localhost ~]#ll
total 4
-rw-r--r-- 1 root root 0 Mar 14 00:43 a.txt
-rw-r--r-- 1 root root 7 Mar 13 23:44 c
-rw-r--r-- 1 root root 0 Mar 14 00:43 test2
[root@localhost ~]#touch test2 c
[root@localhost ~]#ll
total 4
-rw-r--r-- 1 root root 0 Mar 14 00:43 a.txt
-rw-r--r-- 1 root root 7 Mar 14 00:44 c
-rw-r--r-- 1 root root 0 Mar 14 00:44 test2

例3:-r,将某个文件作为参考修改时间,将文件test2的时间戳修改为和/etc/centos-release文件时间戳相同

[root@localhost ~]#ll
-rw-r--r-- 1 root root 0 Mar 14 00:48 test2
[root@localhost ~]#ll /etc/centos-release
-rw-r--r--. 1 root root 27 May 19  2016 /etc/centos-release

[root@localhost ~]#touch -r /etc/centos-release test2
[root@localhost ~]#ll
-rw-r--r-- 1 root root 0 May 19  2016 test2

例4:-t,设定为指定的时间

[root@localhost ~]#ll
-rw-r--r-- 1 root root 0 Mar 14 00:41 test1
-rw-r--r-- 1 root root 0 May 19  2016 test2

[root@localhost ~]#touch -t 201408050909.09 test1

[root@localhost ~]#ll
-rw-r--r-- 1 root root 0 Aug  5  2014 test1
-rw-r--r-- 1 root root 0 May 19  2016 test2

例5:也就是说,这里详细显示的时间是修改时间,不是访问时间

[root@localhost ~]#ll
-rw-r--r-- 1 root root 0 Aug  5  2014 test1

[root@localhost ~]#touch -a test1
[root@localhost ~]#ll
-rw-r--r-- 1 root root 0 Aug  5  2014 test1

[root@localhost ~]#touch -c test1
[root@localhost ~]#ll
-rw-r--r-- 1 root root 0 Mar 14 00:58 test1

未经允许不得转载:江哥架构师笔记 » linux修改时间:touch 命令

分享到:更多 ()

评论 抢沙发

评论前必须登录!