Linux命令之 touch命令
warning:
这篇文章距离上次修改已过1992天,其中的内容可能已经有所变动。
用来修改文件时间戳,若文件不存在,系统会则会新建一个文件。
命令语法
touch [选项] 文件附加参数
| 参数 | 说明 |
|---|---|
| -a, --time=[atime/access/use] | 只更改存取时间。 |
| -c, --no-create | 不建立任何文档。 |
| -d | 使用指定的日期时间,而非现在的时间。 |
| -f | 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。 |
| -m, --time=[mtime/modify] | 只更改变动时间。 |
| -r | 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。 |
| -t | 使用指定的日期时间,而非现在的时间。 |
| -h, --no-dereference | 会影响符号链接本身,而非符号链接所指示的目的地(当系统支持更改符号链接的所有者时,此选项才有用) |
当时用-t参数时,时间戳格式规定为如下形式的十进制数:[[CC]YY]MMDDhhmm[.SS]
- 数字列表项目CC为年数中的前两位,即”世纪数”;
- YY为年数的后两位,即某世纪中的年数.如果不给出CC的值,则touch将把年数CCYY限定在1969--2068之内;
- MM为月数;
- DD为天数;
- hh为小时数;
- mm为分钟数;
- SS为秒数.此处秒的设定范围是0--61,这样可以处理闰秒;
- 这些数字组成的时间是环境变量TZ指定的时区中的一个时间.
由于系统的限制,早于1970年1月1日的时间是错误的。
常用范例
创建新文件
touch test更新test的时间戳和test2的时间戳相同
touch -r test test2
test2时间戳更新成和test一直设定文件的时间戳
touch -t 202004152232.50 test
设定文件的时间戳