Linux下檔案的三個時間意義及用法

2022-05-27 07:15:10 字數 3235 閱讀 5137

linux下檔案的三個時間引數:

(1)modification time(mtime):內容修改時間

這裡的修改時間指的是檔案的內容發生變化,而更新的時間。

(2)change time(ctime):狀態修改時間

這裡的修改時間指的是檔案的屬性或者許可權發生變化,而更新的時間。

(3)access time(atime):最後訪問時間

這裡的訪問時間是指檔案被讀取,而更新的時間。

在linux下操作命令分別為:

ls -l    獲取檔案最後一次內容修改的時間(modification time(mtime))

ls -lu   獲取檔案最後一次訪問的時間(change time(ctime))

ls -lc   獲取檔案最後一次狀態的改變時間(access time(atime))

在linux下檔案沒有建立時間這個概念,若檔案從建立後不曾修改過則可認為 建立時間=修改時間

下面通過事例驗證:

事例1:

# 直接touch乙個test檔案並檢視時間

[root@localhost ~]# touch test; stat

test

file: 『test』

size:

0 blocks: 0 io block: 4096 regular empty file

device: fd00h/64768d inode: 269422829 links: 1

access: (

0644/-rw-r--r--) uid: ( 0/ root) gid: ( 0/root)

access:

2017-05-31

11:02:38.050000000 +0800

modify:

2017-05-31

11:02:38.050000000 +0800

change:

2017-05-31

11:02:38.050000000 +0800

birth: -

總結:當新建立乙個檔案時,這個檔案的最後訪問時間、最後內容修改時間、最後狀態更新時間都是一致的。

事例2:

# 修改該檔案的許可權屬性狀態:

[root@localhost ~]# chmod

777 test ; stat

test

file: 『test』

size:

0 blocks: 0 io block: 4096 regular empty file

device: fd00h/64768d inode: 269422829 links: 1

access: (

0777/-rwxrwxrwx) uid: ( 0/ root) gid: ( 0/root)

access:

2017-05-31

11:02:38.050000000 +0800

modify:

2017-05-31

11:02:38.050000000 +0800

change:

2017-05-31

11:05:27.816000000 +0800

birth: -

總結:修改乙個檔案的許可權狀態資訊,只會更新這個檔案的最後狀態修改時間。

事例3:

# 修改該檔案的內容資訊:

[root@localhost ~]# echo hello > test ; stat

test

file: 『test』

size:

6 blocks: 8 io block: 4096 regular file

device: fd00h/64768d inode: 269422829 links: 1

access: (

0777/-rwxrwxrwx) uid: ( 0/ root) gid: ( 0/root)

access:

2017-05-31

11:02:38.050000000 +0800

modify:

2017-05-31

11:06:59.638000000 +0800

change:

2017-05-31

11:06:59.638000000 +0800

birth: -

總結:對比事例2,這裡最後狀態時間、最後內容改變時間都被更新了。 當修改乙個檔案時,檔案的modify、change會被更新。

事例4:

# 檢視該檔案

[root@localhost ~]# cat test ; stat

test

hello

file: 『test』

size:

5 blocks: 8 io block: 4096 regular file

device: fd00h/64768d inode: 269422829 links: 1

access: (

0777/-rwxrwxrwx) uid: ( 0/ root) gid: ( 0/root)

access:

2017-05-31

11:10:03.470000000 +0800

modify:

2017-05-31

11:08:29.717000000 +0800

change:

2017-05-31

11:08:29.717000000 +0800

birth: -

總結:當檢視檔案時,檔案的 access time 會更新。

linux檔案狀態的三個時間總結如下:

當需要了解這個檔案有沒有被修改過 -  modify time

當需要了解這個檔案最後被檢視的時間 - access time

當需要了解這個檔案許可權最後變動的時間 - change time

擴充套件:查詢1天前未更新內容的檔案並刪除

find . -type f -mtime +1 | xargs

rm -rf

Linux下檔案的三個時間

1 access time atime 最後訪問時間 這裡的訪問時間指檔案被讀取,更新的時間 2 modify time mtime 內容修改時間 這裡的修改時間指檔案內容被修改,更新的時間。3 change time ctime 狀態修改時間 這裡的修改時間指檔案的屬性或許可權被修改,更新的時間。...

Linux檔案的三個時間

在windows下,乙個檔案有 建立時間 修改時間 訪問時間。而 在linux下,乙個檔案也有三種時間,分別是 訪問時間 修改時間 狀態改動時間。兩者有此不同,在linux下沒有建立時間的概念,也就是不能知道檔案的建立時間,但如果檔案建立後就沒有修改過,修改時間 建立時間 如果檔案建立後,狀態就沒有...

Linux檔案的三個時間引數

在linux中,當你使用了stat指令之後會出現三個時間,這個三個時間代表著什麼意思呢?我們可以通過實際操作來 一下。首先,我們在linux中建立了乙個test.c檔案,首先我們使用cat指令訪問一次test.c檔案,觀察變化 顯然access時間發生了變化,那麼什麼命令會讓其餘的兩個時間發生變化呢...