Linux中用stat命令檢視檔案時3個時間點解析

2021-07-05 09:39:56 字數 1576 閱讀 8333

有些時候,我們需要在linux中使用stat命令來檢視檔案的詳細資訊。另外聯想下,ls -l命令顯示的是什麼時間,touch命令修改檔案的時間戳,修改的又是什麼時間?在這裡我們一起來試驗下。

stat -- 獲取比 ls 更多的資訊  

首先,我們來看下stat情況

如圖所示,會出現3個型別的時間,分別是access,modify,change。下面我們就對這3個時間進行詳細解釋下。

access time:表示我們最後一次訪問(僅僅是訪問,沒有改動)檔案的時間

modify time:表示我們最後一次修改檔案的時間

change time:表示我們最後一次對檔案屬性改變的時間,包括許可權,大小,屬性等等。

例如,我們使用cat命令來檢視下此檔案:

此時,檔案的access 時間修改了。access時間我們可以理解為我們最後一次訪問檔案的時間。

我們再來看下change時間的情況:

此時,當我們修改檔案的屬性等時,change 的時間會隨著改變,但modify時間是不變的,因為我們沒有對檔案內容進行修改。

下面我們接著看modify時間的情況:

此時我們可以看到,3個時間點都發生了改變。

由此,我們可以知道

1,當我們僅僅只是讀取檔案時,access time 改變,而modify,change time 不會改變

2,當修改檔案時,access,modify,change time 都會跟著改變

3,當修改檔案屬性時,change time 改變,而access,modify time 不變。

那麼,我們使用的命令ls -l顯示的又是什麼時間呢?touch修改檔案的時間戳的時候修改的是什麼時間呢?

那我們來繼續看下。

ls -l 顯示的時間

此時,對比能夠發現,ls -l顯示的時間是檔案的修改時間。

最後,touch修改的又是什麼時間呢?

首先我們看下touch的man幫助即可幫我找到答案。

不信的話我們再試試看。(不過呢,如果不加引數的話,是所有的時間都會修改掉的。上圖中的man touch中有個-a引數,只修改access時間。這個加引數的大家可以自己試下。)

我們直接touch b.txt吧,因為b.txt檔案已經存在了,不會新建而是修改其時間戳。

有不對的地方還請大神指點。互相學習。

Linux中用stat命令檢視檔案時3個時間點解析

有些時候,我們需要在linux中使用stat命令來檢視檔案的詳細資訊。另外聯想下,ls l命令顯示的是什麼時間,touch命令修改檔案的時間戳,修改的又是什麼時間?在這裡我們一起來試驗下。stat 獲取比 ls 更多的資訊 首先,我們來看下stat情況 如圖所示,會出現3個型別的時間,分別是acce...

linux命令stat,檢視檔案詳細資訊

可以檢視檔案的各類具體資訊 檔案許可權的數字形式0664 uid gid的許可權的數字形式等 lsattr test.sh 檢視檔案的其他屬性 唯讀屬性 只可以追加寫屬性等 linux chattr命令用於改變檔案屬性。這項指令可改變存放在ext2檔案系統上的檔案或目錄屬性,這些屬性共有以下8種模式...

linux命令stat,檢視檔案詳細資訊

可以檢視檔案的各類具體資訊 檔案許可權的數字形式0664 uid gid的許可權的數字形式等 lsattr test.sh 檢視檔案的其他屬性 唯讀屬性 只可以追加寫屬性等 linux chattr命令用於改變檔案屬性。這項指令可改變存放在ext2檔案系統上的檔案或目錄屬性,這些屬性共有以下8種模式...