Linux 命令(文件和目录管理 - touch)

作者: 一去、二三里
个人微信号: iwaleon
微信公众号: 高效程序员

touch 命令可以改变文档或目录时间,包括:最近访问时间、最近更改时间。也可以用于创建新文件。

命令介绍

  • 命令名称
    touch

  • 基本语法
    touch [选项]… 文件…

  • 功能描述

  • 更新文件的最近访问时间和最近修改时间为当前时间(默认方式)

  • 创建新文件

命令选项

选项说明
-a只更改最近访问时间
-c, --no-create如果指定的问津不存在,不会创建任何新文件
-d, --date=STRING使用 STRING 指定的字符串表示时间,而非当前时间
-f忽略
-h, --no-dereference会影响符号链接本身,而非符号链接所指示的目的地(当系统支持更改符号链接的所有者时,此选项才有用)
-m只更改最近更改时间
-r, --reference=FILE将指定文档或目录的时间设置为参考文档或目录的日期时间一致
-t STAMP使用 [[CC]YY]MMDDhhmm[.ss] 格式的时间替代当前时间
--time=WORD使用 WORD 指定的时间:access、atime、use 都等于 -a 选项的效果,而 modify、mtime 等于 -m 选项的效果
--help显示帮助信息并退出
--version显示版本信息并退出

注意:-d-t 选项可接受不同的时间/日期格式。

使用范例

1.创建新文件

要同时创建多个新文件,只需要将多个文件用空格隔开。

[wang@localhost test]$ touch test.txt test1.txt
[wang@localhost test]$ ll
总用量 0
-rw-rw-r--. 1 wang wang 0 1020 12:36 test1.txt
-rw-rw-r--. 1 wang wang 0 1020 12:36 test.txt

2.更改文件的最近访问和最近更改时间

# 修改前,最近访问时间、最近更改时间均为 12:36:36
[wang@localhost test]$ stat test.txt
  文件:"test.txt"
  大小:0         	块:0          IO 块:4096   普通空文件
设备:fd00h/64768d	Inode:6192274     硬链接:1
权限:(0664/-rw-rw-r--)  Uid:( 1000/    wang)   Gid:( 1000/    wang)
环境:unconfined_u:object_r:user_home_t:s0
最近访问:2016-10-20 12:36:36.285731656 +0800
最近更改:2016-10-20 12:36:36.285731656 +0800
最近改动:2016-10-20 12:36:36.285731656 +0800
创建时间:-
[wang@localhost test]$ touch test.txt 
# 修改后,最近访问时间、最近更改时间均为 12:37:28
[wang@localhost test]$ stat test.txt 
  文件:"test.txt"
  大小:0         	块:0          IO 块:4096   普通空文件
设备:fd00h/64768d	Inode:6192274     硬链接:1
权限:(0664/-rw-rw-r--)  Uid:( 1000/    wang)   Gid:( 1000/    wang)
环境:unconfined_u:object_r:user_home_t:s0
最近访问:2016-10-20 12:37:28.546730475 +0800
最近更改:2016-10-20 12:37:28.546730475 +0800
最近改动:2016-10-20 12:37:28.546730475 +0800
创建时间:-

3.更改最近访问时间

# 修改前,最近访问时间为 12:37:28
[wang@localhost test]$ stat test.txt 
  文件:"test.txt"
  大小:0         	块:0          IO 块:4096   普通空文件
设备:fd00h/64768d	Inode:6192274     硬链接:1
权限:(0664/-rw-rw-r--)  Uid:( 1000/    wang)   Gid:( 1000/    wang)
环境:unconfined_u:object_r:user_home_t:s0
最近访问:2016-10-20 12:37:28.546730475 +0800
最近更改:2016-10-20 12:37:28.546730475 +0800
最近改动:2016-10-20 12:37:28.546730475 +0800
创建时间:-
[wang@localhost test]$ touch -a test.txt 
# 修改后,最近访问时间为 12:44:00
[wang@localhost test]$ stat test.txt 
  文件:"test.txt"
  大小:0         	块:0          IO 块:4096   普通空文件
设备:fd00h/64768d	Inode:6192274     硬链接:1
权限:(0664/-rw-rw-r--)  Uid:( 1000/    wang)   Gid:( 1000/    wang)
环境:unconfined_u:object_r:user_home_t:s0
最近访问:2016-10-20 12:44:00.866721613 +0800
最近更改:2016-10-20 12:37:28.546730475 +0800
最近改动:2016-10-20 12:44:00.866721613 +0800
创建时间:-

4.更改最近更改时间

# 修改前,最近更改时间为 12:37:28 
[wang@localhost test]$ stat test.txt 
  文件:"test.txt"
  大小:0         	块:0          IO 块:4096   普通空文件
设备:fd00h/64768d	Inode:6192274     硬链接:1
权限:(0664/-rw-rw-r--)  Uid:( 1000/    wang)   Gid:( 1000/    wang)
环境:unconfined_u:object_r:user_home_t:s0
最近访问:2016-10-20 12:44:00.866721613 +0800
最近更改:2016-10-20 12:37:28.546730475 +0800
最近改动:2016-10-20 12:44:00.866721613 +0800
创建时间:-
[wang@localhost test]$ touch -m test.txt
# 修改后,最近更改时间为 12:47:29 
[wang@localhost test]$ stat test.txt 
  文件:"test.txt"
  大小:0         	块:0          IO 块:4096   普通空文件
设备:fd00h/64768d	Inode:6192274     硬链接:1
权限:(0664/-rw-rw-r--)  Uid:( 1000/    wang)   Gid:( 1000/    wang)
环境:unconfined_u:object_r:user_home_t:s0
最近访问:2016-10-20 12:44:00.866721613 +0800
最近更改:2016-10-20 12:47:29.914716890 +0800
最近改动:2016-10-20 12:47:29.914716890 +0800
创建时间:-

5.设定文件的时间戳

[wang@localhost test]$ ll test.txt 
-rw-rw-r--. 1 wang wang 0 1020 12:47 test.txt
# 指定时间为 2012 年 10 月 1 日 09 点 30 分 30秒
[wang@localhost test]$ touch -t 201210010930.30 test.txt 
[wang@localhost test]$ ll test.txt 
-rw-rw-r--. 1 wang wang 0 101 2012 test.txt
[wang@localhost test]$ stat test.txt 
  文件:"test.txt"
  大小:0         	块:0          IO 块:4096   普通空文件
设备:fd00h/64768d	Inode:6192274     硬链接:1
权限:(0664/-rw-rw-r--)  Uid:( 1000/    wang)   Gid:( 1000/    wang)
环境:unconfined_u:object_r:user_home_t:s0
最近访问:2012-10-01 09:30:30.000000000 +0800
最近更改:2012-10-01 09:30:30.000000000 +0800
最近改动:2016-10-20 12:55:14.062706405 +0800
创建时间:-

6.将指定文档或目录的时间设置为参考文档或目录的日期时间

# 修改前,test.txt 时间为 2012 年
[wang@localhost test]$ ll
总用量 0
-rw-rw-r--. 1 wang wang 0 1020 12:36 test1.txt
-rw-rw-r--. 1 wang wang 0 101 2012 test.txt
[wang@localhost test]$ touch -r test1.txt test.txt 
# 修改后,test.txt 时间和 test1.txt 的保持一致
[wang@localhost test]$ ll
总用量 0
-rw-rw-r--. 1 wang wang 0 1020 12:36 test1.txt
-rw-rw-r--. 1 wang wang 0 1020 12:36 test.txt

命令 stat 用于查看文件的相关信息,其中包含以下内容:

  • 最近访问:表示文件访问时间,当文件被读取时会更新这个时间,但是使用 more、less、tail 和 ls 等命令查看时,访问时间不会变。
  • 最近更改:表示文件的修改时间,这指的是文件内容的修改
  • 最近改动:表示文件属性改变时间,比如通过 chmod 命令更改文件属性时,会更新最近改动时间。

touch 命令以 [[CC]YY]MMDDhhmm[.SS] 格式指定新时间戳的日期和时间,相关变量详细信息如下所示:

参数说明
CC指定年份的前两位数字(即:世纪数)
YY指定年份的后两位数字(即:某世纪中的年数)
MM指定一年的哪一个月,1 ~ 12
DD指定一年的哪一个天,1 ~ 31
hh指定一天中的哪一小时,0 ~ 23
mm指定一小时中的哪一分钟,0 ~ 59
SS指定一分钟中的哪一秒钟,0 ~ 59
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一去丶二三里

有收获,再打赏!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值