当前位置: 首页 > news >正文

Linux touch命令

参考资料

  1. Linux 常用命令 - touch 【创建空文件与修改时间戳】

目录

  • 一. 用法简介
  • 二. 配合扩展字符,批量创建文件
  • 三. 修改文件的时间戳
    • 3.1 `-t` 配置项
    • 3.2 `-d` 配置项
    • 3.3 配合find命令实现批量时间戳修改
  • 四. 结合 `find` 批量创建相同时间的新文件


一. 用法简介

⏹当指定的文件不存在的时候,创建一个空文件;当文件存在的时候,修改文件的时间戳为当前的时间。

  • -d, --date:将文件时间更新为指定的日期时间,而非当前的时间;日期格式需要符合系统的日期格式要求。
  • -t :将文件时间更新为指定格式[[CC]YY]MMDDhhmm[.ss]的日期时间,而非当前的时间。
  • -c:仅修改既存文件的时间戳,如果指定的文件并不存在,不会创建新的文件。
  • -m:只更新文件的修改时间。
touch [OPTION]... FILE...

二. 配合扩展字符,批量创建文件

🧐对于测试时,需要批量创建若干文件的场景,此方式很实用🧐

  • 创建 file1.txt ~ file5.txt 的空文件
touch file{1..5}.txt
  • 创建2023年 ~ 2024年每天的文件(会创建出不存在的月份的文件,如20240231,之后手动删除即可)
touch {2023..2024}{01..12}{01..31}_PAY_INFO_MSG.csv
  • 还可以嵌套创建
apluser@ubuntu24-01:~/work/20250326$ touch file_{1..3}.{mp{3..4},m4{a,b,p,v}}
apluser@ubuntu24-01:~/work/20250326$
apluser@ubuntu24-01:~/work/20250326$ ls | xargs -L 6
file_1.m4a file_1.m4b file_1.m4p file_1.m4v file_1.mp3 file_1.mp4
file_2.m4a file_2.m4b file_2.m4p file_2.m4v file_2.mp3 file_2.mp4
file_3.m4a file_3.m4b file_3.m4p file_3.m4v file_3.mp3 file_3.mp4

三. 修改文件的时间戳

3.1 -t 配置项

  • 将 file.txt 的时间戳设为 2024-03-25 12:30,如果文件不存在的话会创建。
apluser@ubuntu24-01:~/work/20250326$ touch -t 202403251230 file.txt
apluser@ubuntu24-01:~/work/20250326$
apluser@ubuntu24-01:~/work/20250326$ ls -l --time-style="+%Y-%m-%d %H:%M:%S"
total 0
-rw-rw-r-- 1 apluser apluser 0 2024-03-25 12:30:00 file.txt

3.2 -d 配置项

  • -d指定了时间格式,时间格式需要是字符串
apluser@ubuntu24-01:~/work/20250326$ ls -l --time-style="+%Y-%m-%d %H:%M:%S"
total 0
-rw-rw-r-- 1 apluser apluser 0 2024-03-25 12:30:00 file.txt
apluser@ubuntu24-01:~/work/20250326$
apluser@ubuntu24-01:~/work/20250326$ touch -d "2020-01-01 10:00" file.txt
apluser@ubuntu24-01:~/work/20250326$
apluser@ubuntu24-01:~/work/20250326$ ls -l --time-style="+%Y-%m-%d %H:%M:%S"
total 0
-rw-rw-r-- 1 apluser apluser 0 2020-01-01 10:00:00 file.txt

3.3 配合find命令实现批量时间戳修改

  • 文件较少时使用, 例如只有几百个
find /path/to/dir -type f -exec touch {} \;
  • 文件很多时使用, 执行效率更高
  • -print0-0是为了避免有特殊符号的文件名才使用的。如果没有特殊符号的文件名,可不用
find /path/to/dir -type f -print0 | xargs -0 touch

四. 结合 find 批量创建相同时间的新文件

  • /path 下,每个文件都创建一个同时间戳的 .new 文件
  • -r 选项的作用是 复制另一个文件的时间戳(reference 参考时间)
find /path -type f -exec touch -r {} {}.new \;

相关文章:

  • STM32学习笔记之振荡器(原理篇)
  • 大模型学习笔记(Langchain实践笔记)
  • PAT乙级(1077 互评成绩计算)C语言
  • 分布式锁,redisson,redis
  • 为什么要base64编码
  • 【极速版 -- 大模型入门到进阶】大模型如何学会使用对应的工具 (第二弹)
  • PyTorch量化技术教程:第四章 PyTorch在量化交易中的应用
  • 【漏洞复现】Apache Tomcat partial PUT文件上传反序列化漏洞复现(CVE-2025-24813)
  • 【JavaScript 简明入门教程】为了Screeps服务的纯JS入门教程
  • 第12章:优化并发_《C++性能优化指南》notes
  • P1722 矩阵Ⅱ - 洛谷
  • 26考研——查找_树形查找_二叉排序树(BST)(7)
  • JavaScript 改变 HTML 内容
  • Spring JdbcTemplate 万字详解(通俗易懂)
  • 数据库——MySQL基础
  • 解决Ubuntu服务器多网口使用情况下外网老掉线问题
  • 容联云创始人孙昌勋:金融大模型应用,做出场景化应用比技术的先进更重要
  • Photoshop 2025安装教程包含下载安装包,2025最新版图文安装教程
  • 跨层封装简单介绍
  • 简单的括号匹配
  • 媒体:西安62岁男子当街殴打妻子,警方称打人者已被行拘
  • 印巴局势紧张之际,巴基斯坦两天内第二次进行导弹试射
  • 熬夜又不想伤肝?方法只有一个
  • 国家能源局:鼓励各地探索深远海、沙戈荒等可再生能源制氢场景
  • 日产淡水10万吨、全自动运行,万华化学蓬莱海水淡化厂投产
  • 美伊谈判因“后勤原因”推迟,伊朗:视美国做法再定谈判日期