Linux之touch命令
【摘要】 touch用来创建文件,用来修改文件的时间戳。 命令格式touch [选项]... 文件... 命令参数-a 或–time=atime或–time=access或–time=use 只更改存取时间。-c 或–no-create 不建立任何文档。-d 使用指定的日期时间,而非现在的时间。-f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。-m 或–t...
touch
用来创建文件,用来修改文件的时间戳。
命令格式
touch [选项]... 文件...
命令参数
- -a 或–time=atime或–time=access或–time=use 只更改存取时间。
- -c 或–no-create 不建立任何文档。
- -d 使用指定的日期时间,而非现在的时间。
- -f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
- -m 或–time=mtime或–time=modify 只更改变动时间。
- -r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
- -t 使用指定的日期时间,而非现在的时间。
命令功能
touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间。
创建不存在的目录
创建一个1.txt文件
> touch 1.txt
同时创建2.txt 3.txt文件
> touch 2.txt 3.txt
将5.txt的Access
,Modify
时间改成和1.txt一样
> touch -r 1.txt 5.txt
> ls
-rw-r--r-- 1 root root 0 Feb 3 23:17 1.txt
-rw-r--r-- 1 root root 0 Feb 3 23:17 5.txt
批量创建有规律的文件
创建file1.txt file2.txt … file10.txt
> touch file{1..10}.txt
创建文件并指定文件的时间戳
> touch -t 202102031111 3.txt
> ls -al
-rw-r--r-- 1 root root 0 Feb 3 11:11 3.txt
将5.txt的时间改成2天前
> ls -al 5.txt
-rw-r--r-- 1 root root 0 Feb 3 23:17 5.txt
> touch -d "2 days ago" 5.txt
> ls -al 5.txt
> ls
-rw-r--r-- 1 root root 0 Feb 1 23:29 5.txt
只修改1.txt
的Modify
和Change
的时间
> stat 1.txt
File: ‘1.txt’
Size: 5 Blocks: 8 IO Block: 4096 regular file
Device: fd01h/64769d Inode: 101371574 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2021-02-03 23:39:45.258947600 +0800
Modify: 2021-02-03 23:40:10.462066771 +0800
Change: 2021-02-03 23:40:10.462066771 +0800
Birth: -
> touch -m 1.txt
> stat 1.txt
stat 1.txt
File: ‘1.txt’
Size: 5 Blocks: 8 IO Block: 4096 regular file
Device: fd01h/64769d Inode: 101371574 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2021-02-03 23:39:45.258947600 +0800
Modify: 2021-02-03 23:40:53.068649293 +0800
Change: 2021-02-03 23:40:53.068649293 +0800
Birth: -
为什么linux 创建文件是touch 而不是create
touch — change file access and modification times (BSD)
touch — change file timestamps (GNU)
touch的作用本来不是创建文件,而是将指定文件的修改时间设置为当前时间。就是假装“碰”(touch)了一下这个文件,假装文件被“修改”了,于是文件的修改时间就是被设置为当前时间。这带来了一个副作用,就是当touch一个不存在的文件的时候,它会创建这个文件。然后,由于touch已经可以完成创建文件的功能了,就不再需要一个单独的create了。
原文链接:https://rumenz.com/rumenbiji/linux-touch.html
微信公众号:入门小站
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)