概述
Unix文件系統(tǒng)中的文件或文件夾有三個時間戳,分別為atime、ctime和mtime。
atime表示最后一次訪問(僅僅訪問,沒有改動)文件的時間;
mtime表示最后一次修改文件的時間;
ctime表示最后一次對文件屬性改變的時間,包括權限、大小、屬性等。
常用命令
ls –l 文件 ? 默認查到到的時間默認是mtime
stat 文件 ?來查看文件的詳細時間和屬性信息
touch ? ?更改文件的時間戳信息
常用參數(shù)
-a? change only the access time。會更改atime和ctime,atime修改為指定的時間,ctime則是更新為執(zhí)行語句的時間,mtime不變
-m? change only the modification time,會更改mtime和ctime,mtime修改為指定的時間,ctime則是更新為執(zhí)行語句的時間,atime不變
-t ? STAMPuse [[CC]YY]MMDDhhmm[.ss] insteadof current time
--time=WORD,change thespecified time: WORD is access, atime, or use: equivalent to -a WORD ismodify or mtime: equivalent to –m
-c ?注意是不創(chuàng)建不存在的文件,不是更改ctime.如果文件不存在,則不要進行創(chuàng)建.但是此時用-t指定時間時,則會更改atime和mtime,同時,ctime會按照執(zhí)行語句的時間進行更新
例子
更改時間戳
查看文件時間屬性的變化如下
echo 內容 >>文件 ?直接把文件追加到文件內容的底部,不打開文件,則atime不改變,mtime和ctime都變化。
vim 文件,打開文件進行編輯,則atime,mtime和ctime都變化。
如下截圖
查看時間,并不會每次更改access的時間,假設一個網站上的內容,訪問量很大,用戶每次訪問都更改時間戳,對系統(tǒng)的負擔就很低,所以默認這個時間是一天更新一次。如下例子,我多次查看了tt5這個文件,但是access time都不會發(fā)生變化