1. 命令介绍
linux的touch命令不常用,一般在使用make的时候可能会用到,用来修改文件时间戳,或者新建一个不存在的文件。
2. 命令格式
touch [OPTION]... FILE...
3. 命令功能
-
用于把已存在文件的时间标签更新为系统当前的时间(默认方式),它们的数据将原封不动地保留下来;
-
用来创建新的空文件。
4. 常用选项
选项 | 含义 |
---|---|
-a | 或--time=atime或--time=access或--time=use 只更改存取时间; |
-c | 或--no-create 不建立任何文件; |
-d | <时间日期> 使用指定的日期时间,而非现在的时间; |
-f | 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题; |
-m | 或--time=mtime或--time=modify 只更该变动时间; |
-r | <参考文件或目录> 把指定文件或目录的日期时间,统统设成和参考文件或目录的日期时间相同; |
-t | <日期时间> 使用指定的日期时间,而非现在的时间; |
--help | 在线帮助; |
--version | 显示版本信息。 |
5. 常用范例
- 创建不存在的文件
[root@localhost ~]# touch test01.log test02.log
[root@localhost ~]# ls -l test01.log test02.log
-rw-r--r-- 1 root root 0 Nov 13 17:57 test01.log
-rw-r--r-- 1 root root 0 Nov 13 17:57 test02.log
- 设定文件的时间戳
[root@web-01 ~]# ll test01.log
-rw-r--r-- 1 root root 0 Nov 13 17:57 test01.log
[root@web-01 ~]# touch -t 202001011020.54 test01.log
[root@web-01 ~]# ll test01.log
-rw-r--r-- 1 root root 0 Jan 1 2020 test01.log
[root@web-01 ~]# ll --full-time test01.log
-rw-r--r-- 1 root root 0 2020-01-01 10:20:54.000000000 +0800 test01.log
-t 选项的时间格式 [[CC]YY]MMDDhhmm[.ss] 说明
CC 表示世纪,如果不给出CC的值,则 touch 将把年数CCYY限定在1969--2068之内.
YY 表示年
MM 表示月
DD 表示天
hh 表示小时
mm 表示分钟
ss 表示秒
其中世纪、年、秒都是可选的
比如:202001011020.54 2020 年1月1日 10:20:54
- 更新test01.log的时间和test02.log时间相同
[root@web-01 ~]# ll test0{1,2}.log
-rw-r--r-- 1 root root 0 Jan 1 2020 test01.log
-rw-r--r-- 1 root root 0 Nov 13 17:57 test02.log
[root@web-01 ~]# touch -r test02.log test01.log
[root@web-01 ~]# ll test0{1,2}.log
-rw-r--r-- 1 root root 0 Nov 13 17:57 test01.log
-rw-r--r-- 1 root root 0 Nov 13 17:57 test02.log
网友评论