作用:修改文件时间戳属性。若文件不存在则创建空文件。
参数选项:
-a 只更改指定文件的最后访问时间。
-d STRING 使用字符串STRING 代表的时间作为模板设置指定文件的时间属性。
-m 只更改指定文件的最后修改时间。
-r file 将指定文件的时间属性设置为与模板文件file的时间属性相同。
-t STAMP 使用[[CC]YY]MMDDhhmm[.ss] 格式的时间设置文件的时间属性。(CC、YY、ss是可选的)
这里,CC为年数中的前两位,即“世纪数”;YY为年数的后两位,即某世纪中的年数。如果不给出CC的值,则touch 将把年数CCYY限定在1969--2068之内,MM为月数,DD为天数,hh 为小时数,mm为分钟数,SS为秒数。此处秒的设定范围是0-61,这样可以处理闰秒。这些数字组成的时间是环境变量TZ指定的时区中的一个时间。由于系统的限制,早于1970年1月1日的时间是错误的。我用的系统是经过修改的,所有会出现000001010000。
说明:如果不加任何参数,直接touch 文件,讲同时修改三个值,如下所示
范例1. 更改文件的时间戳属性。
说明:stat 命令可以查看文件的时间戳属性,Access 为访问时间,Modify 为修改时间,Change 为状态改变时间。
mtime:最后修改时间(ls -lt),修改文件内容,文件的修改时间(modify time)会改变。
ctime:状态改变时间(ls -lc),修改文件内容,移动文件或改变文件属性等,文件的change 时间会改变。
atime:最后访问时间(ls -lu),查看文件内容时,文件的访问时间(access time)会改变。
范例2. 选项 -d 指定创建文件后的文件修改时间
范例3. 选项 -r 修改 cpdir.txt 时间属性,使其和 a.txt 的时间属性一致
范例4. 选项 -t 将文件设置为 201506242318.12 时间格式