zoukankan      html  css  js  c++  java
  • linux文件时间的查看和改动touch

    1. linux文件的时间


    linux下文件时间主要有以下三种:

    1.1 modification time(mtime)


    文件改动时间。即文件内容的改动时,更新这个时间。不包含文件权限和属性的改动。

    使用ls -l查看。默认显示时间为mtime
    $ ls -l uconv.h
    -rw-rw-r--  1 work work 1808 Jul 23  2013 uconv.h

    1.2 status time(ctime)


    文件状态status的改动时间,如文件的权限和属性改动时更新这个时间。
    使用 ls --time=ctime 查看
    $ ls -l --time=ctime uconv.h 
    -rw-rw-r--  1 work work 1808 Jul 23  2013 uconv.h

    1.3 access time(atime)


    文件訪问时间,当文件内容被获取时。更新这个时间。
    使用 ls --time=actime 查看
    $ ls -l --time=atime uconv.h
    -rw-rw-r--  1 work work 1808 Dec 12  2013 uconv.h

    2. 改动文件的时间


    假设须要改动上述三个时间,使用touch命令来改动。
    touch filename ,假设文件不存在,则新建一个文件。

    $ touch --help
    Usage: touch [OPTION]... FILE...
    Update the access and modification times of each FILE to the current time.
    
      -a                     change only the access time
                             改动訪问时间
      -c, --no-create        do not create any files
                             改动文件三个时间,不存在则不创建
      -d, --date=STRING      parse STRING and use it instead of current time
                             指定时间取代当前时间
      -f                     (ignored)
      -m                     change only the modification time
                             改动mtime
      -r, --reference=FILE   use this file's times instead of current time
      -t STAMP               use [[CC]YY]MMDDhhmm[.ss] instead of current time
                             指定改动时间

    比如:
    $ touch -d "2 days ago" uconv.h
    $ ll uconv.h ; ll --time=atime uconv.h ; ll --time=ctime uconv.h ;
    -rw-rw-r--  1 work work 1808 Jun 13 18:17 uconv.h
    -rw-rw-r--  1 work work 1808 Jun 13 18:17 uconv.h
    -rw-rw-r--  1 work work 1808 Jun 15 18:17 uconv.h
    将mtime和atime改动为两天前,ctime没变。
    $ touch -t 201406142020 uconv.h   
    
    $ ll uconv.h ; ll --time=atime uconv.h ; ll --time=ctime uconv.h ;
    -rw-rw-r--  1 work work 1808 Jun 14 20:20 uconv.h
    -rw-rw-r--  1 work work 1808 Jun 14 20:20 uconv.h
    -rw-rw-r--  1 work work 1808 Jun 15 18:23 uconv.h
    atime和mtime都变了,可是ctime变成了当前时间。


    使用cp命令。-a保持原属性。

    $ cp -a uconv.h uconv.h1
    
    $ ll uconv.h1 ; ll --time=atime uconv.h1 ; ll --time=ctime uconv.h1 ;
    -rw-rw-r--  1 work work 1808 Jun 14 20:20 uconv.h1
    -rw-rw-r--  1 work work 1808 Jun 15 18:25 uconv.h1
    -rw-rw-r--  1 work work 1808 Jun 15 18:27 uconv.h1
    mtime和atime都保持原文件不变,可是ctime变成当前时间


  • 相关阅读:
    OC面向对象—封装
    设计模式之类关系
    理性:中国别一厢情愿救俄罗斯(转)
    Mockito--完整功能介绍(转)
    从陌陌上市看BAT的移动保卫战(转)
    This exception may occur if matchers are combined with raw values
    RepositoryClassLoader.java
    搭建你的持续集成server
    mysql中怎样查看和删除唯一索引
    Android中Context具体解释 ---- 你所不知道的Context
  • 原文地址:https://www.cnblogs.com/jhcelue/p/7052837.html
Copyright © 2011-2022 走看看