linux下的時間戳有三個,access(檔案訪問時間)、modify(檔案內容修改時間)、change(檔案修改時間,包括許可權修改,內容修改)。
如何檢視這三個時間
ls -lc filename #列出檔案的 ctime (最後更改時間)
ls -lu filename #列出檔案的 atime(最後訪問時間)
ls -l filename #列出檔案的 mtime (最後修改時間)
測試
為什麼開啟了檔案access時間沒改呢?
首先我懷疑了快取的影響,於是我通過命令sync; echo 3 > /proc/sys/vm/drop_caches
清空快取,但是結果是一樣的,開啟檔案,access時間依然沒改。
然後google了一下(注意用英文描述搜),發現man mount裡面對relatime、noraletime、strictatime可以看到緣故。下面簡要描述下,什麼情況會更新access time。
linux2.6.30開始,mount預設是relatime的,access time會在檔案內容被修改後更新,以及被修改後的下一次訪問時更新,距上一次訪問時間超過一天會更新。這裡和上面的測試也是相符的。
參考:
linux檔案許可權和檔案時間戳
今天和大家聊聊檔案許可權和stat的三個檔案時間戳,並做簡單驗證。初學linux後,了解到linux系統中一切皆檔案的概念,可見對檔案充分的了解是很重要的 首先介紹linux中的三種檔案許可權 r 讀 w 寫 x 執行 其次是使用檔案的三種人物角色 檔案擁有者 user 組內成員 group 其他使...
linux檔案的時間戳及linux目錄功能
每個檔案有三個時間戳 access time 訪問時間,atime,讀取檔案內容 modify time 修改時間,mtime,改變檔案內容 資料 change time 改變時間,ctime,元資料發生改變 mtime和ctime區別 檔案資料改變時mtime和ctime都會改變,但檔案移動 1 ...
linux下touch修改檔案的時間戳
linux 的touch 命令用來修改檔案時間戳,或者新建乙個不存在的檔案。上圖中,access modify change分別是訪問時間 修改時間 改變時間,即為檔案的時間戳。1 命令格式 touch 選項 檔名.2 命令引數 a 或 time atime或 time access或 time u...