当前位置:操作系统 > Unix/Linux >>

Linux指令篇:档案目录管理--touch

名称:touch

  使用权限:所有使用者

  使用方式:

  touch [-acfm]

  [-r reference-file] [--file=reference-file]

  [-t MMDDhhmm[[CC]YY][.ss]]

  [-d time] [--date=time] [--time={atime,access,use,mtime,modify}]

  [--no-create] [--help] [--version]

  file1 [file2 ...]

  说明:

  touch 指令改变档案的时间记录。 ls -l 可以显示档案的时间记录。

  参数:

  a 改变档案的读取时间记录。

  m 改变档案的修改时间记录。

  c 假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样。

  f 不使用,是为了与其他 unix 系统的相容性而保留。

  r 使用参考档的时间记录,与 --file 的效果一样。

  d 设定时间与日期,可以使用各种不同的格式。

  t 设定档案的时间记录,格式与 date 指令相同。

  --no-create 不会建立新档案。

  --help 列出指令格式。

  --version 列出版本讯息。

  范例:

  最简单的使用方式,将档案的时候记录改为现在的时间。若档案不存在,系统会建立一个新的档案。

  touch file

  touch file1 file2

  将 file 的时间记录改为 5 月 6 日 18 点 3 分,公元两千年。时间的格式可以参考 date 指令,至少需输入 MMDDHHmm ,就是月日时与分。

  touch -c -t 05061803 file

  touch -c -t 050618032000 file

  将 file 的时间记录改变成与 referencefile 一样。

  touch -r referencefile file

  将 file 的时间记录改成 5 月 6 日 18 点 3 分,公元两千年。时间可以使用 am, pm 或是 24 小时的格式,日期可以使用其他格式如 6 May 2000 。

  touch -d "6:03pm" file

  touch -d "05/06/2000" file

  touch -d "6:03pm 05/06/2000" file

  touch 也可以制造一个空档(0 byte).例如DHCP Server所需的/etc/dhcpd.leases,dhcpd 必须要有这个档案才能运作正常.[root@/root]#touch /etc/dhcpd.leases[root@/root]#ls -l /etc/dhcpd.leases-rw-r--r-- 1 root root 0 Jul 3 05:50 /etc/dhcpd.leases

  记得上一次重灌前把/etc下的设定档tar起来,重灌好之后把原有设定还原,却发现系统检查设定档的时间有问题,这个时候用

  find /etc -name * -exec touch {};

  就可以把设定档的时间更新到与现在一致了。
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,