touch详讲
touch详讲
touch
是 Linux/Unix 系统中一个常用的命令,主要用于创建空文件或修改文件的时间戳(访问时间和修改时间)。它用途简单却非常实用,尤其是在脚本编写或文件管理中。
以下是对 touch
命令的详细讲解,包括语法、常用选项、使用场景和示例。
基本语法
代码语言:javascript代码运行次数:0运行复制touch [选项] [文件...]
- 文件:指定要操作的文件,可以是一个或多个。
- 选项:用于控制
touch
的行为。
主要功能
- 创建空文件:如果指定的文件不存在,
touch
会创建一个新的空文件。 - 修改时间戳:
- 访问时间(Access time,
atime
):文件最近被读取的时间。 - 修改时间(Modification time,
mtime
):文件内容最近被修改的时间。
- 访问时间(Access time,
常用选项详解
1. 创建空文件
如果指定的文件不存在,touch
会创建一个新的空文件:
touch
此命令创建一个名为 的空文件。
2. -a
:仅更新访问时间
代码语言:javascript代码运行次数:0运行复制touch -a
- 只更新文件的访问时间,不改变修改时间。
- 如果文件不存在,会自动创建。
. -m
:仅更新修改时间
代码语言:javascript代码运行次数:0运行复制touch -m
- 只更新文件的修改时间,不改变访问时间。
- 如果文件不存在,会自动创建。
4. -t
:使用指定时间
指定时间戳格式为 [[CC]YY]MMDDhhmm[.ss]
,其中:
CC
:世纪(如19
表示 1900 年代,20
表示 2000 年代)。YY
:年份。MM
:月份(01-12)。DD
:日期(01-1)。hh
:小时(00-2)。mm
:分钟(00-59)。.ss
:可选的秒数(00-59)。
示例:
代码语言:javascript代码运行次数:0运行复制touch -t 20250107120.45
将文件的时间戳设置为 2025 年 1 月 7 日 12:0:45。
5. -d
:以人类可读的时间格式指定时间
-d
选项可以直接使用类似 YYYY-MM-DD hh:mm:ss
的格式指定时间:
touch -d "2025-01-07 12:0:45"
效果与 -t
类似,但语法更加直观。
6. -c
:不创建文件
如果指定的文件不存在,touch
不会创建新文件。
touch -c
- 如果文件存在,更新时间戳。
- 如果文件不存在,不会创建。
7. -r
:使用另一个文件的时间戳
将目标文件的时间戳设置为参考文件的时间戳:
代码语言:javascript代码运行次数:0运行复制touch -r
这会将 的时间戳设置为与
相同。
8. --help
:显示帮助信息
显示 touch
的帮助信息:
touch --help
使用场景与示例
1. 创建空文件
这是 touch
最常见的用法:
touch new
如果 new
已存在,touch
只会更新其时间戳,而不会更改其内容。
2. 一次创建多个空文件
代码语言:javascript代码运行次数:0运行复制touch
会同时创建 、
和
。
. 更新访问时间
代码语言:javascript代码运行次数:0运行复制touch -a
仅更新文件的访问时间。
4. 更新修改时间
代码语言:javascript代码运行次数:0运行复制touch -m
仅更新文件的修改时间。
5. 设置特定的时间戳
使用 -t
设置时间
代码语言:javascript代码运行次数:0运行复制touch -t 20250107120
将文件时间设置为 2025 年 1 月 7 日 12:0:00。
使用 -d
设置时间
代码语言:javascript代码运行次数:0运行复制touch -d "2025-01-07 12:0:45"
将文件时间设置为 2025 年 1 月 7 日 12:0:45。
6. 将一个文件的时间戳应用到另一个文件
代码语言:javascript代码运行次数:0运行复制touch -r
将 的时间戳更新为与
相同。
7. 不创建文件,只更新现有文件的时间
代码语言:javascript代码运行次数:0运行复制touch -c
- 如果文件存在,则更新其时间戳。
- 如果文件不存在,则不创建新文件。
8. 创建多个文件并更新时间戳
代码语言:javascript代码运行次数:0运行复制touch
- 如果
和
不存在,
touch
会创建它们。 - 如果它们已存在,则只更新时间戳。
检查时间戳
可以使用 ls
命令查看文件的时间戳:
查看文件的修改时间(mtime
):
ls -l
查看文件的访问时间(atime
):
ls -lu
查看文件的状态改变时间(ctime
):
ls -lc
注意事项
文件权限:要使用 touch
修改文件时间戳,用户必须对文件有写权限。如果没有权限,会报错:
touch: cannot touch '': Permission denied
时间格式:使用 -t
和 -d
设置时间时,需注意正确的时间格式,否则会报错或导致意外结果。
不影响文件内容:touch
命令只修改文件的时间戳,不会更改文件的内容。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2025-01-08,如有侵权请联系 cloudcommunity@tencent 删除权限语法filetouchtxt通过熟练使用 touch 命令及其选项,可以轻松完成创建空文件或修改文件的时间戳,在 Linux 文件管理和脚本编写中非常高效和常用,相信这篇文章可以让你的linux学习之路一帆风顺。 看到这里不容易点个关注不迷路。
#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格
留言与评论(共有 19 条评论) |
本站网友 51海淘 | 16分钟前 发表 |
只更新现有文件的时间代码语言:javascript代码运行次数:0运行复制touch -c 如果文件存在 | |
本站网友 乳腺癌的早期症状 | 19分钟前 发表 |
hh:小时(00-2) | |
本站网友 投资公司章程 | 8分钟前 发表 |
atime):文件最近被读取的时间 | |
本站网友 音欠 | 3分钟前 发表 |
.ss:可选的秒数(00-59) | |
本站网友 预警2000 | 26分钟前 发表 |
45 | |
本站网友 北京日租 | 17分钟前 发表 |
45" 效果与 -t 类似 | |
本站网友 幼交图 | 23分钟前 发表 |
touch详讲 touch 是 Linux/Unix 系统中一个常用的命令 | |
本站网友 它山之石 | 15分钟前 发表 |
如果它们已存在 | |
本站网友 风油精说明书 | 13分钟前 发表 |
20 表示 2000 年代) | |
本站网友 降血糖的食物 | 4分钟前 发表 |
代码语言:javascript代码运行次数:0运行复制touch -c 如果文件存在 | |
本站网友 罗马婚纱摄影 | 13分钟前 发表 |
0 | |
本站网友 林立 | 28分钟前 发表 |
分享自作者个人站点/博客 | |
本站网友 微软官网下载 | 0秒前 发表 |
5. -d:以人类可读的时间格式指定时间-d 选项可以直接使用类似 YYYY-MM-DD hh | |
本站网友 大文化 | 29分钟前 发表 |
mtime):文件内容最近被修改的时间 | |
本站网友 un联众 | 1分钟前 发表 |
0 | |
本站网友 长江三角洲经济圈 | 5分钟前 发表 |
.ss:可选的秒数(00-59) | |
本站网友 福山二手房 | 22分钟前 发表 |
DD:日期(01-1) | |
本站网友 乳蛾 | 6分钟前 发表 |
则更新其时间戳 |