2.20 将文件时间修改为当前时间

touch

touch命令并不是你经常使用的命令,但是继续学习本书时需要用到这个命令,所以现在介绍一下这个命令。有趣的是,虽然touch存在的主要目的是更新文件访问和修改时间,但这并不是你现在要使用这个命令的主要原因。相反,这里要用的是它的辅助功能,不过,这个功能确实比它的主要功能还要有用!

说明 只有获得修改文件的权限,才可以对文件使用touch命令,修改它的时间。否则,touch命令会运行失败。

为了同时更新文件(或文件夹)的访问和修改时间,只需要运行基本的touch命令。

  1. $ ls -l ~/
  2. drwxr-xr-x 848 2005-10-19 11:36 src
  3. drwxr-xr-x 1664 2005-10-18 12:07 todo
  4. drwxr-xr-x 632 2005-10-18 12:25 videos
  5. -rw-r--r-- 239 2005-09-10 23:12 wireless.log
  6. $ touch wireless.log
  7. $ ls -l ~/
  8. drwxr-xr-x 848 2005-10-19 11:36 src
  9. drwxr-xr-x 1664 2005-10-18 12:07 todo
  10. drwxr-xr-x 632 2005-10-18 12:25 videos
  11. -rw-r--r-- 239 2005-10-19 14:00 wireless.log

由于使用了touch命令,wireless.log文件的修改时间和访问时间都修改了,不过ls–l只能显示修改时间。这个文件有一个多月没用过了,但是touch命令现在对它进行了更新,让它看起来好像刚刚使用过(touched)似的。

如果你喜欢,也可以更具体一点儿。如果你只想更新访问时间,就可以使用-a选项(或--time=access)。如果只想更新修改时间,则使用-m(或--time=modify)。