一、简介
touch命令是用于创建空文件和修改时间戳属性,如果文件不存在,会创建一个空文件,反之,则会对文件的访问时间(Atime)和修改时间(Ctime)进行修改。
二、语法
语法:touch [选项]... 文件...
参数说明:
-a:只更改访问时间
-c:不创建任何文件,假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样
-d:设定时间与日期,可以使用各种不同的格式
-m:只更改修改时间
-f:不使用,是为了与其他 unix 系统的相容性而保留
-r:使用参考档的时间记录,与 --file 的效果一样
-t:设定档案的时间记录,格式与 date 指令相同
--no-create 不会建立新档案
--help:显示此帮助信息并退出
--version:显示版本信息并退出
三、实战
1、创建一个空文件
[root@app01 abc]# touch test.txt
2、修改指定文件的修改时间和访问时间
原时间:
[root@app01 abc]# stat test.txt
文件:"test.txt"
大小:0 块:0 IO 块:4096 普通空文件
设备:fd02h/64770d Inode:2060030 硬链接:1
权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root)
最近访问:2025-08-16 12:31:19.792228465 +0800
最近更改:2025-08-16 12:31:19.792228465 +0800
最近改动:2025-08-16 12:31:19.792228465 +0800
创建时间:-
修改后:
[root@app01 abc]# touch -d "2025-08-16 10:44" test.txt
[root@app01 abc]# stat test.txt
文件:"test.txt"
大小:0 块:0 IO 块:4096 普通空文件
设备:fd02h/64770d Inode:2060030 硬链接:1
权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root)
最近访问:2025-08-16 10:44:00.000000000 +0800
最近更改:2025-08-16 10:44:00.000000000 +0800
最近改动:2025-08-16 12:34:52.629063160 +0800
创建时间:-
可以看到修改前和修改后的“最近访问”和“最近更改”时间发生了变化。
该操作呢,可以任意修改文件的时间属性,如果不想通过“-d”参数来修改,我就想让某一个文件的时间属性发生变化,可以直接再创建一个同样的文件进行覆盖。如下:
原文件时间属性:
[root@app01 abc]# stat test.txt
文件:"test.txt"
大小:9 块:8 IO 块:4096 普通文件
设备:fd02h/64770d Inode:2080113 硬链接:1
权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root)
最近访问:2025-08-16 12:36:37.035510427 +0800
最近更改:2025-08-16 12:36:34.930541732 +0800
最近改动:2025-08-16 12:36:34.930541732 +0800
创建时间:-
重新创建后时间属性:
[root@app01 abc]# touch test.txt
[root@app01 abc]# stat test.txt
文件:"test.txt"
大小:9 块:8 IO 块:4096 普通文件
设备:fd02h/64770d Inode:2080113 硬链接:1
权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root)
最近访问:2025-08-16 12:38:58.592405196 +0800
最近更改:2025-08-16 12:38:58.592405196 +0800
最近改动:2025-08-16 12:38:58.592405196 +0800
创建时间:-
最近访问”和“最近更改”时间发生了变化。
1668

被折叠的 条评论
为什么被折叠?



