在windows下,乙個檔案有:建立時間、修改時間、訪問時間。 而
在linux下,乙個檔案也有三種時間,分別是:訪問時間、修改時間、狀態改動時間。
兩者有此不同,
在linux下沒有建立時間的概念,也就是不能知道檔案的建立時間,但如果檔案建立後就沒有修改過,修改時間=建立時間;如果檔案建立後,狀態就沒有改動過,那麼狀態改動時間=建立時間;如果檔案建立後,沒有被讀取過,那麼訪問時間=建立時間,因為不好判斷檔案是否被改過、讀過、其狀態是否變過,所以判斷檔案的建立時間基本上能為不可能。
如何查乙個檔案的三個時間呢?
先用下面的命令來建立乙個檔案
# date && echo "this is file be used test time of file" >filetime.txt && ll --full-time filetime.txt
tue aug 4 15:13:44 hkt 2009
-rw-r--r-- 1 root root 39 2009-08-04 15:13:44.000000000 +0800 filetime.txt
通過stat filename.txt來查,如:
# stat filetime.txt
file: `filetime.txt'
size: 39 blocks: 8 io block: 4096 regular file
device: 802h/2050d inode: 17 links: 1
access: (0644/-rw-r--r--) uid: ( 0/ root) gid: ( 0/ root)
access: 2009-08-04 15:13:44.000000000 +0800
modify: 2009-08-04 15:13:44.000000000 +0800
change: 2009-08-04 15:13:44.000000000 +0800
說明:access訪問時間。modify修改時間。change狀態改動時間。可以stat *檢視這個目錄所有檔案的狀態。
ctime=change time
atime=access time
mtime=modifiy time
因為這是乙個新的檔案(filetime.txt),沒做過內容、屬性的更改,也沒讀過這個檔案,所以三者(訪問時間、修改時間、狀態改動時間)的時間是一致的,這時檔案的修改時間與這三個時間是一樣的,是沒有疑問的。
1、訪問時間,讀一次這個檔案的內容,這個時間就會更新。比如對這個檔案運用 more、cat等命令。ls、stat命令都不會修改檔案的訪問時間。
2、修改時間,修改時間是檔案內容最後一次被修改時間。比如:vi後儲存檔案。ls -l列出的時間就是這個時間。
3、狀態改動時間。是該檔案的i節點最後一次被修改的時間,通過chmod、chown命令修改一次檔案屬性,這個時間就會更新。
另個除了可以通過stat來檢視檔案的mtime,ctime,atime等屬性,也可以通過ls命令來檢視,具體如下:
ls -lc filename 列出檔案的 ctime (最後更改時間)
ls -lu filename 列出檔案的 atime(最後訪問時間)
ls -l filename 列出檔案的 mtime (最後修改時間)
請大家最終原創!
Linux下檔案的三個時間
1 access time atime 最後訪問時間 這裡的訪問時間指檔案被讀取,更新的時間 2 modify time mtime 內容修改時間 這裡的修改時間指檔案內容被修改,更新的時間。3 change time ctime 狀態修改時間 這裡的修改時間指檔案的屬性或許可權被修改,更新的時間。...
Linux檔案的三個時間引數
在linux中,當你使用了stat指令之後會出現三個時間,這個三個時間代表著什麼意思呢?我們可以通過實際操作來 一下。首先,我們在linux中建立了乙個test.c檔案,首先我們使用cat指令訪問一次test.c檔案,觀察變化 顯然access時間發生了變化,那麼什麼命令會讓其餘的兩個時間發生變化呢...
複習linux檔案的三個時間
對每乙個檔案保持有三個時間字段,他們的意義如下 字段 說明 例子 ls l st atime 檔案資料的最後訪問時間 read u st mtime 檔案資料的最後修改時間 write 預設 st ctime 檔案資料的最後更改時間 chown,chmod c 修改時間和更改時間的區別 修改時間是檔...