更新文件时间戳或创建新文件 touch
文件有三个主要变动时间:
modification time (mtime): 当文件内容数据被改变时,更新时间
status time (ctime): 当文件权限和属性被改变时,更新时间
access time (atime): 当文件被访问时,更新时间
touch [-acdmt] 文件
参数:
-a: 仅修改访问时间
-c: 仅修改文件的时间,若该文件不存在则不创建新文件
-d: --date=日期和时间 指定要设定的修改日期时间
-m: 仅修改mtime
-t: 后面可以接要修改的时间格式为[YYMMDDhhmm]
示例
#文件不存在则创建新的空文件 # ls默认显示的时间是文件的mtime [roger@oc3137372501 test]$ touch test_touch [roger@oc3137372501 test]$ ll total 0 -rw-rw-r--. 1 roger roger 0 Aug 25 10:49 test_touch #查看文件时间 [roger@oc3137372501 test]$ stat test_touch File: `test_touch' Size: 0 Blocks: 0 IO Block: 4096 regular empty file Device: fd01h/64769dInode: 1048609 Links: 1 Access: (0664/-rw-rw-r--) Uid: ( 500/ roger) Gid: ( 500/ roger) Access: 2015-08-25 10:49:25.663413029 +0800 Modify: 2015-08-25 10:49:25.663413029 +0800 Change: 2015-08-25 10:49:25.663413029 +0800 # 查看一下文件内容,更新了atime [roger@oc3137372501 test]$ cat test_touch [roger@oc3137372501 test]$ stat test_touch File: `test_touch' Size: 0 Blocks: 0 IO Block: 4096 regular empty file Device: fd01h/64769dInode: 1048609 Links: 1 Access: (0664/-rw-rw-r--) Uid: ( 500/ roger) Gid: ( 500/ roger) Access: 2015-08-25 10:55:47.721125941 +0800 Modify: 2015-08-25 10:49:25.663413029 +0800 Change: 2015-08-25 10:49:25.663413029 +0800 # atime和mtime被更新成指定时间,ctime更新为当前时间 [roger@oc3137372501 test]$ touch -t 1409111008 test_touch [roger@oc3137372501 test]$ stat test_touch File: `test_touch' Size: 0 Blocks: 0 IO Block: 4096 regular empty file Device: fd01h/64769dInode: 1048609 Links: 1 Access: (0664/-rw-rw-r--) Uid: ( 500/ roger) Gid: ( 500/ roger) Access: 2014-09-11 10:08:00.000000000 +0800 Modify: 2014-09-11 10:08:00.000000000 +0800 Change: 2015-08-25 11:02:02.444495259 +0800
touch 常用的两个功能
1 创建一个空文件
2 将某个文件日期修改为当前日期(mtime 和 atime )
如有错误,敬请指正!
谢谢!