linux文件的三个主要的修改时间

Linux文件有3个修改时间,很多朋友都喜欢弄混淆,也包括我在内,现在列出来供参考。 
  1)modification time (mtime,修改时间):这个时间指的是文件内容修改的时间,而不是文件属性的修改,当数据内容修改时,这个时间就会改变,用命令ls -l默认显示的就是这个时间: 
  2)status time (ctime,状态时间):当一个文件的状态改变时,这个时间就会改变,例如更改了文件的权限与属性等,它就会改变。 
  3)access time (atime,访问时间):当读取文件内容时,就会更改这个时间,例如使用cat 去读取/etc/man.config,那么该文件的atime就会改变。   例如: 
  # ls -l --full-time /etc/man.config 
  -rw-r--r--  1 root root 4522 2007-11-17 18:47:54.000000000 +0800 /etc/man.config 
  # ls -l --time=atime --full-time /etc/man.config 
  -rw-r--r--  1 root root 4522 2010-03-15 14:20:20.000000000 +0800 /etc/man.config 
  # ls -l --time=ctime --full-time /etc/man.config 
  -rw-r--r--  1 root root 4522 2008-07-11 16:21:55.000000000 +0800 /etc/man.config 
  
----------------------------------------------------------------------------------- 
  #cat /etc/man.config执行之后再查看atime,该时间已经更改   # ls -l --time=atime --full-time /etc/man.config 
  -rw-r--r--  1 root root 4522 2010-03-15 14:24:30.000000000 +0800 /etc/man.config 
  更改文件权限:# chmod o-r /etc/man.config   查看ctime,已经更改。 
  # ls -l --time=ctime --full-time /etc/man.config 




   2014年执业医师资格考试 医学综合笔试  临床执业医师  口腔执业医师  中医执业医师    
  




  -rw-r-----  1 root root 4522 2010-03-15 14:28:34.000000000 +0800 /etc/man.config 
  如果对文件内容进行编辑,那么mtime就会改变了。 
  如果要一起查看文件的三个时间情况,可以用命令stat进行查看   # stat /etc/man.config   File: `/etc/man.config' 
  Size: 4522       Blocks: 24         IO Block: 4096   regular file   Device: 807h/2055d Inode: 1049307     Links: 1 
  Access: (0640/-rw-r-----)  Uid: (    0/    root)   Gid: (    0/    root) 
  Access: 2010-03-15 14:24:30.000000000 +0800   Modify: 2007-11-17 18:47:54.000000000 +0800   Change: 2010-03-15 14:28:34.000000000 +0800   时间与上面的时间完全吻合。 
  文件的时间很重要,因为如果误判文件时间,可能会造成某些程序无法正常运行,万一我们发现一个文件的时间是未来的时间(很多时候会有这个问题,我们在安装的时候提到的GMT时间就是那个意思),那么怎样才能让次时间变成现在的时间呢?我们只需要一个touch命令即可。   touch的用法为:   touch [-actmd] 文件   参数: 
  -a:仅修改access time   -c:仅修改时间而不建立文件 
  -t:后面可以接时间,格式为:[YYMMDDhhmm]   -m:仅修改mtime 
  -d:后面可以接日期,也可以使用--date="日期或时间" 






  




  例如:将man.config的日期调整为两天前,则:   #touch -d "2 days ago" /etc/man.config   结果atime和mtime将会改变而ctime不会改变。 
  通过touch命令,可以轻松的修改文件文件的日期与时间,并且也可以建立一个空文件,不过要注意的是,即使复制一个文件并复制所有属性页没有办法复制ctime属性。 
  touch命令常用的情况是   1)建立一个空文件 
  2)将某个文件日期修改为当前日期(mtime和atime)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值