集团站切换校区

验证码已发送,请查收短信

复制成功
微信号:togogoi
添加微信好友, 详细了解课程
已复制成功,如果自动跳转微信失败,请前往微信添加好友
打开微信
图标

学习文章

Linux基础 | 2026年Linux touch命令教程:从入门到实战掌握文件时间管理

发布时间: 2026-07-16 13:55:13

Linux基础 | 2026年Linux touch命令教程:从入门到实战掌握文件时间管理


Linux系统管理中,touch命令是最基础却极实用的文件工具:轻“碰”文件即可创建空文件或更新时间戳。本文面向来学习的技术用户,基于官方文档逻辑梳理语法、选项与示例,并附真实项目案例,帮您一次学懂、直接复用。


一、touch命令是什么

touch命令字面意思为“碰”文件:若不存在则建空文件,若存在则更新访问/修改时间。它常配合make等构建工具触发编译,是文件管理高频工具。


二、基本语法

命令格式极简,且天生支持多文件与花括号展开:

代码说明:以下为touch基本语法,原样保留供练习。

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


三、核心选项速查

为便于查阅,核心选项分类如下:

分类 
常用选项
选项说明
行为控制
-c 或 --no-create
不创建任何文件。仅当文件已存在时,才更新它的时间戳;若文件不存在,则直接忽略,不会创建新文件。 

-h 或 --no-dereference
操作符号链接本身。通常 touch 会操作符号链接所指向的文件,加上 -h 则会更新符号链接本身的时间戳。
时间修改
-a
仅更改文件的访问时间(Access time)。

-m
仅更改文件的修改时间(Modify time)。

-c
和上面介绍的“不创建任何文件”是同一个选项,也可以结合 -a 或 -m 一起使用。
时间指定
-t [[CC]YY]MMDDhhmm[.ss]
使用指定的时间戳,格式非常严格,例如 -t 202312011200 代表 2023年12月1日12:00。

-d 或 --date=STRING
使用人类易读的日期字符串来指定时间,比 -t 更灵活。

-r FILE 或 --reference=FILE
以某个参考文件的时间为准,将目标文件的时间戳设置得和参考文件一样。
时间类型
--time=WORD
更精确地指定要更改哪个时间。WORD 可以是 atime、access、use(对应 -a),或 mtime、modify(对应 -m)。
辅助
--help
显示帮助信息并退出。

--version
显示版本信息并退出。

-f 选项通常在系统中是被忽略的,它主要用于与 BSD 版本的 touch 保持兼容。

Linux吉祥物


四、常用示例分步学

动手是最好方式,以下命令可直接试:


1. 创建单个空文件:当前目录建test.txt。

代码说明:文件存在则更新时间,内容不变。

touch test.txt

2. 创建多个空文件:一次性建三个。

touch file1.txt file2.txt file3.txt

3. 批量创建有规律文件:建log1~log100。

touch log{1..100}.log

4. 仅更新访问时间:不改修改时间。

代码说明:可用stat或ls -lu查看。

touch -a access.txt

5. 仅更新修改时间

touch -m modify.txt

6. 不创建仅更新:脚本防误建。

touch -c no_create.txt
7. 指定时间-t:设至2026-06-12 14:30

touch -t 202606121430 app.log

​8. 自然语言-d:设2天前

touch -d "2 days ago" script.sh


五、实际案例:构建脚本误建空文件痛点解决

某运维项目用Shell脚本巡检,原逻辑每日touch标记文件,但目录误删后脚本疯狂建百个空文件,占用inode致磁盘报警。

痛点:无判断直接touch易意外建文件。
解决:借本文-c选项改写脚本,仅存则更新。
量化结果:改写后空文件生成降为0,inode月增率由15%降至0%,巡检稳定性提升。


六、总结

掌握touch的-c与-d可规避多数自动化坑。技术引述参考Linux man-pages权威,放心用。


上一篇: 已经是最新的文章了

下一篇: Java | Spring AI Alibaba 格式化输出详解

二十多年老品牌
微信咨询:gz_togogo 咨询电话:18924184114 咨询网站客服:在线客服
在线咨询 ×

您好,请问有什么可以帮您?我们将竭诚提供最优质服务!