美文网首页
文件的元数据以及文件时间戳信息

文件的元数据以及文件时间戳信息

作者: 静静呗 | 来源:发表于2016-09-28 20:26 被阅读0次

1.元数据
元数据(Metadata),又称中介数据、中继数据,为描述数据的数据(data about data),主要是描述数据属性的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。元数据算是一种电子式目录,为了达到编制目录的目的,必须在描述并收藏数据的内容或特色,进而达成协助数据检索的目的。
任何文件系统中的数据分为数据和元数据。数据是指普通文件中的实际数据,而元数据指用来描述一个文件的特征的系统数据,诸如访问权限、文件拥有者以及文件数据块的分布信息等等。

文件的元数据是指文件的属性、大小、创建时间、访问时间、属主属组等信息。

查看元数据的命令:stat、ls -l

Paste_Image.png

file:文件名
size:文件的大小,以字节为单位
block:文件占了多少个数据块
IO Block:文件所占数据块的块大小
Device:硬件,既说明该文件在硬盘的那个柱面
Inode:节点号
links:链接数
Access(0644/-rw-r--r--):权限以及文件类型
Uid:该文件所属的属主
Gid:该文件所属的属组
context:安全上下文
时间戳:
Access time: 访问时间,读一次这个文件的内容,这个时间就会更新。比如对这个文件运用 more、cat等命令。ls、stat命令都不会修改文件的访问时间。
Modify time: 修改时间,修改时间是文件内容最后一次被修改时间。比如:vi后保存文件。ls -l列出的时间就是这个时间。
Change time: 状态改动时间,是该文件的i节点最后一次被修改的时间,通过chmod、chown命令修改一次文件属性,这个时间就会更新。

可以用touch修改时间戳:
touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间。
touch [选项]... 文件名...
-a 或--time=atime或--time=access或--time=use  只更改存取时间。
-c 或--no-create  不建立任何文档。
-d  使用指定的日期时间,而非现在的时间。
-f  此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
-m 或--time=mtime或--time=modify  只更改变动时间。
-r  把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
-t  使用指定的日期时间,而非现在的时间。

示例:
1.更改文件的时间戳为当前的时间。(三个时间同时修改)
touch aaa
如果文件不存在,则系统或建立一个新文件

Paste_Image.png

2.设置文件的时间戳(修改的是访问时间和更改时间)
touch -t 222202222222 aaa
-t 后面的时间格式[[CC]YY]MMDDHHmm[.SS]
C 年份的前两位
YY 年份的后两位
MM 月份[01-12]
DD 日起[01-31]
hh 时[00-23]
mm 分[00-59]
SS 秒[00-59]

Paste_Image.png

3.变更文档时间戳,文件名记错了,或者写错了,又不想创建新文件,使用选项c

Paste_Image.png

4.单独修改时间(访问时间)

Paste_Image.png

为什么改动时间会变化,是因为本身touch -at 200808080808.08 aaa 这条命令在修改文件的属性,所以改动时间会随之记录用户的操作痕迹,但是touch -at 200808080808.08 aaa 这条命令只作用在访问时间!

相关文章

网友评论

      本文标题:文件的元数据以及文件时间戳信息

      本文链接:https://www.haomeiwen.com/subject/jdiqyttx.html