touch 详细介绍
封面图
•
2026-01-03
•
Linux
232
0
0
0
“touch” 是一个在 Unix/Linux 系统中常用的命令,用于创建空文件或更新文件的访问和修改时间戳(即“touch”文件)。它也可以用来检查文件是否存在。 --- ## 一、基本用法 ### 1. 创建空文件 ```bash touch filename ``` - 如果 `filename` 不存在,则会创建一个空文件。 - 如果 `filename` 已经存在,则不会覆盖原文件内容,只是将文件的 **访问时间(atime)** 和 **修改时间(mtime)** 更新为当前时间。 ### 2. 更新文件的时间戳 ```bash touch existingfile ``` - 该命令不会改变文件的内容,但会将文件的访问时间和修改时间更新为当前时间。 --- ## 二、常用选项 | 选项 | 功能 | |------|------| | `-a` | 仅更新访问时间(atime),不更新修改时间(mtime) | | `-m` | 仅更新修改时间(mtime),不更新访问时间(atime) | | `-t` | 指定时间戳,格式:`[[CC]YY]MMDDhhmm[.ss]` | | `-c` 或 `--no-create` | 不创建新文件(如果文件不存在则不报错) | | `-r` | 使用参考文件的时间戳,而不是当前时间 | --- ## 三、示例 ### 示例 1:创建一个空文件 ```bash touch myfile.txt ``` ### 示例 2:更新现有文件的时间戳 ```bash touch myfile.txt ``` ### 示例 3:指定时间戳 ```bash touch -t 202405011200 myfile.txt ``` - 将 `myfile.txt` 的时间戳设置为 2024年5月1日 12:00。 ### 示例 4:仅更新访问时间 ```bash touch -a myfile.txt ``` ### 示例 5:不创建新文件(如果文件不存在则不报错) ```bash touch -c nonexistentfile ``` ### 示例 6:使用另一个文件的时间戳 ```bash touch -r referencefile.txt myfile.txt ``` - 将 `myfile.txt` 的时间戳设置为与 `referencefile.txt` 相同。 --- ## 四、应用场景 - 在脚本中创建临时文件。 - 更新文件的时间戳以触发某些依赖关系(如 Make 工具)。 - 检查文件是否存在(结合 `-c` 选项)。 --- ## 五、注意事项 - `touch` 命令不会覆盖已有的文件内容。 - 如果你想要创建一个非空文件,可以使用 `echo "content" > filename`。 - 在 Windows 中,`touch` 并不是默认命令,但可以通过 Git Bash、WSL 或 PowerShell 实现类似功能。 --- ## 六、相关命令 - `cat`:查看或创建文件内容。 - `echo`:输出文本到终端或文件。 - `ls -l`:查看文件的详细信息,包括时间戳。 - `stat`:显示文件的详细元数据。 --- 如果你需要更详细的解释或特定场景下的使用方式,请告诉我!
上一篇:
linux crontab 时间格式
下一篇:
linux之cp/scp命令+scp命令详解
标题录入,一次不能超过6条
留言
评论