Linux基础知识之文件的时间戳及touch的使用

文件的时间戳包含在它的元数据中,属于其本身属性信息。
    文件的时间戳包含有三种时间分别如下:
    acess time  访问时间
    modify time 修改时间(更具体说是修改数据时的时间)
    change time 改变时间 (修改元数据的时间)

modify time以下简写为mtime,mtime与ctime是不同的,当文件的属性信息发生改变比如文件名,文件路径,文件属主等其改变的是ctime;当文件的内容发生改动则是mtime发生变化。

科普:
      元数据的概念:
元数据(Metadata),又称中介数据、中继数据,为描述数据的数据(data about data),主要是描述数据属性(property)的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。元数据算是一种电子式目录,为了达到编制目录的目的,必须在描述并收藏数据的内容或特色,进而达成协助数据检索的目的。都柏林核心集(Dublin Core Metadata Initiative,DCMI)是元数据的一种应用,是1995年2月由国际图书馆电脑中心(OCLC)和美国国家超级计算应用中心(National Center for Supercomputing Applications,NCSA)所联合赞助的研讨会,在邀请52位来自图书馆员、电脑专家,共同制定规格,创建一套描述网络上电子文件之特征。元数据是关于数据的组织、数据域及其关系的信息,简言之,元数据就是关于数据的数据。
 
  了解文件时间戳的概念对于发生故障迅速定位问题所在有一定帮助。
  如何查看文件的时间戳
  命令:stat 它是查看文件系统状态
  修改文件的时间戳
  命令:touch
  为了对touch有个更详细的了解我们man下touch其主要用法如下(有省略,只列举常用的功能项)
NAME
      touch - change file timestamps
SYNOPSIS
      touch [OPTION]... FILE...
DESCRIPTION
      Update  the  access  and modification times of each FILE to the current
      time.
      A FILE argument that does not exist is created empty, unless -c  or  -h
      is supplied.
      A  FILE  argument  string of - is handled specially and causes touch to
      change the times of the file associated with standard output.
      Mandatory arguments to long options are  mandatory  for  short  options
      too.
      -a    change only the access time  修改atime
      -d, --date=STRING                   
              parse STRING and use it instead of current time
      -h, --no-dereference                  只修改链接文件时间戳而对链接的源文件无影响
              affect each symbolic link instead of any referenced file (useful
              only on systems that can change the timestamps of a symlink)
      -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还有一个很主要的功能就是创建新文件,其格式为:
    touch filename 如果该file不存在则创建。

如何修改文件时间戳,通过实验来查看上面选项的实际作用
    以下实验环境均在CentOS6.8环境,
    实验前准备:
    /test目录    /test/file1文件
[root@centos6 test]# pwd
/test
[root@centos6 test]# ll
总用量 0
-rw-r--r--. 1 root root 0 7月  28 21:43 file1

前提条件准备完毕。
先查看下文件file1的文件属性信息,特别是时间戳
[root@centos6 test]# stat file1 
  File: "file1"
  Size: 0              Blocks: 0          IO Block: 4096  普通空文件
Device: 803h/2051d      Inode: 266584      Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)  Gid: (    0/    root)
Access: 2016-07-28 21:43:53.554651380 +0800
Modify: 2016-07-28 21:43:53.554651380 +0800
Change: 2016-07-28 21:43:53.554651380 +0800

先修改atime

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/15124.html