Linux的touch命令一般用来更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
1.命令格式:
touch [选项]... 文件...
2.命令参数:
-a 或--time=atime或--time=access或--time=use 只更改存取时间。
-c 或--no-create 不建立任何文档。
-d 使用指定的日期时间,而非现在的时间。
-f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
-m 或--time=mtime或--time=modify 只更改变动时间。
-r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
-t 使用指定的日期时间,而非现在的时间。
--no-create 不会建立新档案。
--help 列出指令格式。
--version 列出版本讯息。
3. 范例:
最简单的使用方式,将档案的时候记录改为现在的时间。若档案不存在,
系统会建立一个新的档案。
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 必须要有这个档案才能运作正常.
find /etc -name * -exec touch {}; 就可以把设定档的时间更新到与现在一致了。
设定文件的时间戳
命令:
touch -t 201211142234.50 log.log
更新log.log的时间和log2012.log时间戳相同
命令:
touch -r log.log log2012.log