Linux touch命令介绍

相关知识

每个档案在 linux 下都会记录许多的时间参数,其实是有三个主要的变动时间,分别如下:

  1. modification time (mtime):
    当该档案的『内容数据』变更时,就会更新这个时间!内容数据指的是档案的内容,而不是档案的属性或权限。
    下面的例子来查看mtime:
    [root@www ~]# ls -l /etc/man.config
    
  2. status time (ctime):
    当该档案的『状态 (status)』改变时,就会更新这个时间,举例来说,像是权限或属性被更改了,都会更新这个时间。
    下面的例子来查看ctime:
    [root@www ~]# ls -l --time=ctime /etc/man.config
    
  3. access time (atime):
    当『该档案的内容被取用』时,就会更新这个读取时间 (access)。举例来说,我们使用 cat 去读取 /etc/man.config , 就会更新该档案的 atime 了。
    下面的例子来查看atime:
    [root@www ~]# ls -l --time=atime /etc/man.config
    

语法

指令语法如下:

[root@www ~]# touch [-acdmt] 档案
选项与参数:
-a :仅修订 access time
-c :仅修改档案的时间,若该档案不存在则不建立新档案
-d :后面可以接欲修订的日期而不用目前的日期,也可以使用 --date="日期或时间"
-m :仅修改 mtime
-t :后面可以接欲修订的时间而不用目前的时间,格式为[YYMMDDhhmm]

在预设的状忞下,如果 touch 后面有接档案,则该档案的三个时间 (atime/ctime/mtime) 都会更新为目前的时间。
若该档案不存在,则会主动的建立一个新的空的档案。

作用

通过 touch 这个指令,我们可以轻易的修改档案的日期或时间。并且也可以建立一个空的档案!
不过,要注意的是,即使我们复制一个档案时,复制所有的属性,但也没有办法复制 ctime 这个属性的。ctime 可以记录这个档案最近的状忞 (status) 被改变的时间。
我们平时看的文件属性中,比较重要的还是mtime。我们关心的常常是这个档案的『内容』 是什么时候被更改的。

touch 这个指令最常被使用的情况是:

  • 建立一个空的档案;
  • 将某个档案日期修订为目前 (mtime 与 atime)
发布了79 篇原创文章 · 获赞 10 · 访问量 8676

猜你喜欢

转载自blog.csdn.net/weixin_44728363/article/details/102519953
今日推荐