詳解Linux中atime,mtime,ctime的使用場景
一、文件與文件夾三個時間:atime,mtime,ctime的含義
1.含義
atime(Access Time):文件最近被訪問時間
mtime(Modify Time):文件最近內(nèi)容修改時間
ctime(Change Time):文件最近權(quán)限和屬性修改時間
2.文件的觸發(fā)time修改的情況
atime(Access Time):在讀取文件或者執(zhí)行文件時更改的任何對inode的訪問都會使此處改變
mtime(Modify Time):在寫入文件時隨文件內(nèi)容的更改而更改的
ctime(Change Time):在寫入文件、更改所有者、權(quán)限或鏈接設(shè)置(更改狀態(tài))時隨 Inode 的內(nèi)容更改而更改的
3.文件夾觸發(fā)time修改的情況
atime(Access Time):讀取文件或者執(zhí)行文件時更改的(cd不會ls會改變)
mtime(Modify Time):在文件夾中有文件的新建才會改變,注意使用vi在文件夾內(nèi)新建文件即使退出時也會變化mtime,而只更改文件夾內(nèi)文件內(nèi)容不會修改文件夾的mtime
ctime(Change Time):ctime 基本同文件的ctime,其體現(xiàn)的是inode的change time
4.注意事項,mtime與ctimemtime的改變必然導(dǎo)致ctime的改變,但是ctime不一定導(dǎo)致mtime的更改
二、stat命令查看文件的時間
<strong>stat test001.txt</strong>
三、ll命令查看文件時間(對照stat命令可驗證)
1.默認(rèn)顯示mtime
ll test001.txt #默認(rèn)顯示mtime
2.展示ctime
ll --time=ctime test001.txt #展示ctime
3.展示atime
ll --time=atime test001.txt #展示atime
四、測試創(chuàng)建/修改文件的時間
假定目前的時間是:2022-10-05 13:15:40
date "+%Y-%m-%d %H:%M:%S"
1.創(chuàng)建文件后測試,文件atime、ctime、mtime均一樣
touch test001.txt stat test001.txt
2.修改文件后查看,文件atime不變,ctime、mtime更新
echo 123 > test001.txt stat test001.txt
3.更改文件屬主后:文件atime、mtime不變,ctime更新
chown -R root:root test001.txt stat test001.txt
4.創(chuàng)建文件夾,文件atime、ctime、mtime均一樣
mkdir test001mdr stat test001mdr
5.文件夾內(nèi)新建文件,文件夾atime不變,ctime與mtime均發(fā)生改變
vi test001mdr/test001.txt stat test001mdr
6.修改文件夾的屬主,文件夾的atime、mtime不變,ctime更新
chown -R root:root ./test001mdr stat test001mdr
五、常用命令關(guān)于文件時間相關(guān)
(24h為一天前時間節(jié)點,0為當(dāng)前時間)
1.在當(dāng)前目錄下查詢3天內(nèi)修改過的文件(72h~0)
find . -mtime -3 #查詢3天內(nèi)修改過的文件
2.在當(dāng)前目錄下查詢1天內(nèi)訪問過的文件(24h~0)
find . -atime -1 #查詢1天內(nèi)訪問過的文件
3.查找50-100 天修改過的文件(100d~50d)
find / -mtime +50 -mtime -100 #查找50-100 天修改過的文件
4.查找過去 1 小時內(nèi)更改過的文件(60min~0)
find . -mmin -60 #過去1小時內(nèi)更改過的文件
5.查找前一天修改過的文件(48h~24h)
find . -mtime 1 #查找前一天修改過的文件(48h~24h)
6.查找一天前修改過的文件(~48h)
find . -mtime +1 #查找一天前修改過的文件(~48h)
7.查找早于指定日期修改的文件(~=day)
find .? -newermt 2022-10-04? #查找早于指定日期(包含)修改的文件
8.查找24小時內(nèi)修改的文件(24h~0)
find . -newermt '-24hours' #查找24小時內(nèi)修改的文件
9.查找10分鐘之內(nèi)修改過的文件(10min~0)
find /home/ -type f -newermt '-10 minutes' #查找10分鐘之內(nèi)修改過的文件
10.查找1天之內(nèi)修改過的文件(24h~0)
find . -newermt '1 day ago' #查找1天之前到現(xiàn)在修改的文件
11.查找昨天到現(xiàn)在修改的文件-同上(24h~0)
find . -newermt 'yesterday' #查找昨天到現(xiàn)在修改的文件
到此這篇關(guān)于詳解Linux中atime,mtime,ctime的使用場景的文章就介紹到這了,更多相關(guān)Linux atime mtime ctime內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
linux 定時執(zhí)行shell、python腳本的方法
這篇文章主要介紹了linux 定時執(zhí)行shell、python腳本的方法,本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-05-05linux數(shù)據(jù)庫備份并通過ftp上傳腳本分享
這篇文章主要介紹了linux數(shù)據(jù)庫備份并通過ftp上傳腳本,腳本還可以備份網(wǎng)站,需要的朋友可以參考下2014-03-03