CentOS中可以通过stat查看文件的元数据

[baby@xiaoxiao abc]$ stat honey
  File: `honey'
  Size: 25         Blocks: 8          IO Block: 4096   regular file
Device: 806h/2054d Inode: 131076      Links: 1
Access: (0664/-rw-rw-r--)  Uid: (  500/    baby)   Gid: (  500/    baby)
Access: 2015-03-30 10:27:51.851234105 +0800
Modify: 2015-03-30 10:44:58.144226717 +0800
Change: 2015-03-30 10:44:58.146226803 +0800

Access:最后访问时间
Modify:最后修改时间
Change:状态更改时间(由系统维护,无法随意修改)
touch -a :仅更新Access time(同时更新Change为current time)
touch -m:仅更新Modify time(同时更新Change为current time)
touch -c:不创建新文件
touch -t:使用指定的时间更新时间戳(仅更改Access time与Modify time,Change time更新为current time)
例:touch -t  [[CC]YY]MMDDhhmm[.ss] filename

[root@xiaoxiao cde]# touch -t 199906121808 honey
[root@xiaoxiao cde]# stat honey
  File: `honey'
  Size: 25         Blocks: 8          IO Block: 4096   regular file
Device: 806h/2054d Inode: 131076      Links: 1
Access: (0664/-rw-rw-r--)  Uid: (  500/    baby)   Gid: (  500/    baby)
Access: 1999-06-12 18:08:00.000000000 +0800
Modify: 1999-06-12 18:08:00.000000000 +0800
Change: 2015-03-30 13:31:40.064221158 +0800

当文件的任何数据改变时(包括文件的数据和元数据),Change会更新,对文件重命名(mv),移动(mv)或者复制时(cp -a),系统都会更新文件的Change time。当文件的内容被修改时Modify和Change会同时更新。当Change time更新后,第一次访问该文件,系统会更新Access time(仅更新Access time),之后对该文件的访问,将不会更新Access time。

[baby@xiaoxiao cde]$ touch honey

[baby@xiaoxiao cde]$ stat honey
  File: `honey'
  Size: 25         Blocks: 8          IO Block: 4096   regular file
Device: 806h/2054d Inode: 131076      Links: 1
Access: (0664/-rw-rw-r--)  Uid: (  500/    baby)   Gid: (  500/    baby)
Access: 2015-03-30 11:24:47.041225726 +0800
Modify: 2015-03-30 11:24:47.041225726 +0800
Change: 2015-03-30 11:24:47.041225726 +0800

[baby@xiaoxiao cde]$ cat honey &> /dev/null
[baby@xiaoxiao cde]$ stat honey
  File: `honey'
  Size: 25         Blocks: 8          IO Block: 4096   regular file
Device: 806h/2054d Inode: 131076      Links: 1
Access: (0664/-rw-rw-r--)  Uid: (  500/    baby)   Gid: (  500/    baby)
Access: 2015-03-30 11:25:16.401228081 +0800
Modify: 2015-03-30 11:24:47.041225726 +0800
Change: 2015-03-30 11:24:47.041225726 +0800

用touch更新时间戳后的第一次访问,Access time更新了,下面是第二次访问之后的元数据,Access time并没有更新。

[baby@xiaoxiao cde]$ cat honey &> /dev/null
[baby@xiaoxiao cde]$ stat honey
  File: `honey'
  Size: 25         Blocks: 8          IO Block: 4096   regular file
Device: 806h/2054d Inode: 131076      Links: 1
Access: (0664/-rw-rw-r--)  Uid: (  500/    baby)   Gid: (  500/    baby)
Access: 2015-03-30 11:25:16.401228081 +0800
Modify: 2015-03-30 11:24:47.041225726 +0800
Change: 2015-03-30 11:24:47.041225726 +0800

tar或者各种压缩命令在解压出来时都会更新文件的Change time,若想要不更改Change time备份文件可以使用dd命令(dd命令在复制单个文件时,会更新时间戳,在备份整个分区时,会保留文件的所有属性),过程如下:
新建一个分区sda10,不用格式化,挂载到/media/sda10。

[root@xiaoxiao cde]# ll /dev/sda10
brw-rw---- 1 root disk 8, 10 Mar 30 12:58 /dev/sda10

[root@xiaoxiao abc]# dd if=/dev/sda6 of=/dev/sda10 &  (/dev/sda6挂载在/tmp下)
[1] 5917

[root@xiaoxiao abc]# mount /dev/sda10 /media/sda10/

[root@xiaoxiao cde]# stat /media/sda10/cde/honey /tmp/cde/honey
  File: `/media/sda10/cde/honey'
  Size: 25         Blocks: 8          IO Block: 4096   regular file
Device: 80ah/2058d Inode: 131076      Links: 1
Access: (0664/-rw-rw-r--)  Uid: (  500/    baby)   Gid: (  500/    baby)
Access: 2015-03-30 11:25:16.401228081 +0800
Modify: 2015-03-30 11:24:47.041225726 +0800
Change: 2015-03-30 11:24:47.041225726 +0800
  File: `/tmp/cde/honey'
  Size: 25         Blocks: 8          IO Block: 4096   regular file
Device: 806h/2054d Inode: 131076      Links: 1
Access: (0664/-rw-rw-r--)  Uid: (  500/    baby)   Gid: (  500/    baby)
Access: 2015-03-30 11:25:16.401228081 +0800
Modify: 2015-03-30 11:24:47.041225726 +0800
Change: 2015-03-30 11:24:47.041225726 +0800

两个文件的元数据一模一样。

CentOS中通过stat查看文件的元数据的更多相关文章

  1. CentOS 中卸载 RPM 包文件

    CentOS 中卸载 RPM 包文件 一.原由 因为之前卸载 openvas 这个工具,使用了 find / -name "openvas"-exec rm -rf {} \ ; ...

  2. 在bash shell中使用getfattr查看文件扩展属性

    getfattr用法 用于获取文件扩展属性,返回一系列键值对,参考Linux Man Page. 常用OPTIONS -n name, --name=name Dump the value of th ...

  3. 在Centos中使用goaccess查看Nginx日志

    在Nginx的配置文件中配置一下access日志: log_format access ‘$remote_addr – $remote_user [$time_local] “$request” ‘‘ ...

  4. centos中YUM安装后文件的常见路径

    1 php的相关 1)ini的文件   /etc/php.ini 2 apache相关 1) conf的文件 /etc/httpd/conf 2)错误日志  /etc/httpd/logs 3)扩展文 ...

  5. centos中更新glibc库文件到2.17

    1 确保安装过gcc yum install gcc 2 获取glibc相关版本 wget http://ftp.gnu.org/pub/gnu/glibc/glibc-2.17.tar.xz 3 解 ...

  6. Linux中查看文件编码

    在Linux中查看文件编码可以通过以下几种方式:1.在Vim中可以直接查看文件编码:set fileencoding即可显示文件编码格式.如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱 ...

  7. 在Linux中查看文件的编码及对文件进行编码转换

    如果你需要在Linux中操作windows下的文件,那么你可能会经常遇到文件编码转换的问题.Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8.下面介绍一下,在Li ...

  8. 在Vim中查看文件编码和文件编码转换

    在Vim中查看文件编码和文件编码转换 风亡小窝 关注  0.2 2016.09.26 22:43* 字数 244 阅读 5663评论 0喜欢 2 在Vim中查看文件编码 :set fileencodi ...

  9. Centos常用命令之:文件操作

    在centos中,常用的文件操作命令有: ◇touch:建置新文件或者修改文件时间◇cat:从第一行开始显示文件内容◇tac:从最后一行开始显示文件内容,和cat相反◇nl:显示的时候,顺道输出行号◇ ...

随机推荐

  1. 字符串比较 忽略大小写 iphone

    //不考虑大小写比较字符串1 NSString *astring01 = @"this is a String!"; NSString *astring02 = @"Th ...

  2. 设计模式之Adapter(适配器模式)

    1.出现原因: 在软件系统中,由于应用环境的变化,常常需要将“一些现存的对象”放在新的环境中应用,但是新环境要求的接口是这些现存对象所不满足的.(所以可以在他们之间建立一个适配器的中间类) 2.意图: ...

  3. JAVA开发CHECK STYLE

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE module PUBLIC "-/ ...

  4. jquery实现select下拉框可输入+联想关联option

    下面代码摘自http://www.oschina.net/question/96791_12832 <script language="javascript" src=&qu ...

  5. line-height:150%和line-height:1.5的区别

    base都是font-size,不管是继承的,还是自身的. "%":为继承父元素的距离 "无单位":计算各自的距离. 看demo1: 样式 body{ font ...

  6. UML工具选择

    今天在考虑UML工具的选择,个人要求比较简单:能够画用例图,时序图,活动图即可. 选择的工具主要有以下三个: 1.Enterprise Architect 2.Power Designer 15 3. ...

  7. SQL Server 执行计划中的扫描方式举例说明

    SQL Server 执行计划中的扫描方式举例说明 原文地址:http://www.cnblogs.com/zihunqingxin/p/3201155.html 1.执行计划使用方式 选中需要执行的 ...

  8. CSS水平导航条和纵向导航条

    问题描述:         使用CSS制作水平导航条和纵向导航条   问题解决:        (1)水平导航条            1.1 效果预览:                   1.2 ...

  9. 设计模式之外观模式(Facade)

    外观模式原理:将复杂的子系统的结构封装起来,只提供客户一个简单的接口 代码如下: #include <iostream> #include <string> #include ...

  10. 【UOJ Easy Round #2】

    然而UER我也照样跪…… 第一题 忘了取模sad || 操作符将整个区间分成了一些段,每个手机只会执行其中某一段,执行次数为这一段中&&的个数?+1? ans=ans*num[i]+1 ...