在linux中,當你使用了stat指令之後會出現三個時間,這個三個時間代表著什麼意思呢?我們可以通過實際操作來**一下。
首先,我們在linux中建立了乙個test.c檔案,
首先我們使用cat指令訪問一次test.c檔案,觀察變化
顯然access時間發生了變化,那麼什麼命令會讓其餘的兩個時間發生變化呢,繼續測試。
在不停的測試命令中我發現了乙個有趣的現象,訪問test.c檔案的時候access時間有時會出現變化,有時又保持不變。原來在linux檔案系統的設計中,access time不更新是有一些歷史原因的,在2.6核心以前,我們每次訪問檔案,access time都會更新。後來os發現更新access的開銷很大,尤其是讀頻繁的環境。所以後來mount提出了乙個noatime的選項,來禁止更新access,再後來為了相容access,又增加了乙個相容的選項relaime,只有在modify time大於等於access 時,才會更新access time,後來這也成為了很多系統的預設設定。所以,這個訪問時間atime有時候並不能每次更新。
除此之外,我發現修改檔案許可權可以更改檔案的change時間,如圖:
總結:access(atime):訪問時間,指檔案最後一次被訪問的時間;
modify(mtime):修改時間,指檔案內容最後一次被修改的時間。這裡的檔案內容指檔案內的資料;
change(ctime):狀態修改時間,指檔案的屬性狀態一次被修改的時,比如檔案許可權、所有者、大小等。
Linux檔案的三個時間
在windows下,乙個檔案有 建立時間 修改時間 訪問時間。而 在linux下,乙個檔案也有三種時間,分別是 訪問時間 修改時間 狀態改動時間。兩者有此不同,在linux下沒有建立時間的概念,也就是不能知道檔案的建立時間,但如果檔案建立後就沒有修改過,修改時間 建立時間 如果檔案建立後,狀態就沒有...
Linux下檔案的三個時間
1 access time atime 最後訪問時間 這裡的訪問時間指檔案被讀取,更新的時間 2 modify time mtime 內容修改時間 這裡的修改時間指檔案內容被修改,更新的時間。3 change time ctime 狀態修改時間 這裡的修改時間指檔案的屬性或許可權被修改,更新的時間。...
複習linux檔案的三個時間
對每乙個檔案保持有三個時間字段,他們的意義如下 字段 說明 例子 ls l st atime 檔案資料的最後訪問時間 read u st mtime 檔案資料的最後修改時間 write 預設 st ctime 檔案資料的最後更改時間 chown,chmod c 修改時間和更改時間的區別 修改時間是檔...