linux 系统中文件有三个关于时间的属性:
mtime:(modify time)修改时间,当文件内的数据修改的时,该时间更新,更改权限或者属性的时,改时间不变。
操作如:vim-->wq、>>(追加)等改变文件内容的操作会改变文件mtime,日常ls -l显示是mtime
atime:(access time) 访问时间,当使用这个文件时,该时间会更新,即凡读取而不修改文件。
操作如:cat、cp、grep、set、more、less、tail、head等操作会改变atime时间
ctime:(change time)状态修改时间,当文件属性或文件位置变动会更新该时间
操作如:chmod、chown、mv、ln等操作改变文件属性和位置的操作
实验测试:
1,目录
#mkdir dirtest
#stat dirtest
由上图可知新建一个文件夹,改文件夹所有时间属性都相同
#在dirtest 目录中新建一个子目录或一个文件,dirtest目录的mtime和ctime更新
2,普通文件
对文件的vi--->写入数据--->wq操作会同时改变mtime、atime、ctime,
因为vim先读取文件到内存atime更新,文件内容发送改变mtime更新,写入内容后文件大小改变ctime更新
对文件的vi--->q!操作会只会改变atime
如果对文件使用>或>>方式改变文件的内,则mtime、ctime时间更新,而atime时间不变
因为用>或>>方式系统不用将文件i读取到内存
注:
ln -s 改变文件的取用时间(atime)
ls -la 查看文件,如果文件为符号链接文件,则会更改其取用时间(atime)