touch 命令直接修改inode中文件的元数据,并不访问数据的具体内容。

命令格式:

touch [选项]... 文件...

命令参数:
-a   只更改存取时间。--time=STYLE 指定修改的时间类型        STYLE可以为atime或access或mtime  -c/--no-create  如果文件不存在,不建立任何文档。-d/-t  使用指定的日期时间,而非现在的时间。-f  此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。-m   只更改变动时间。-r  把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
touch -a file//刷新文件的atimetouch -m file//刷新文件的mtime\// 一般情况下,刷新了atime或者mtime,ctime会随之改变touch -c filename//如果filename不存在,不创建

实例1:将文件的时间戳(atime和mtime)时间改为昨天

实例2:将文件的mtime修改到指定时间

实例3:修改文件的mtime和atime到指定时间

实例4:更新log.log的时间和log2012.log时间戳相同

touch -r log.log log2012.log[root@localhost test]# ll-rw-r--r-- 1 root root    0 10-28 16:01 log2012.log-rw-r--r-- 1 root root    0 10-28 16:01 log2013.log-rw-r--r-- 1 root root    0 10-28 14:48 log.log

tips:

-t/-d time 使用指定的时间值 time 作为指定文件相应时间戳记的新值.此处time的格式为: [[CC]YY]MMDDhhmm[.SS]

如果不给出CC的值,则touch将把年数CCYY限定在1969--2068之内.MM为月数,DD为天将把年数CCYY限定在1969--2068之内.这样可以处理闰秒. 由于系统的限制,早于1970年1月1日的时间是错误的。