Find–atime –ctime –mtime的用法與區別總結
週五有同事問起find命令中-mtime n、-mtime –n以及-mtime +n的用法區別,當時雖然記得這裡n是n個24個小時的意思,也是對所有這幾個屬性詳細的用法卻一知半解,索性週末仔細google並且實踐了一番,終於理清楚了箇中乾坤。
find . –atime n find . –ctimen find . –mtime n
find . –atime –n find . –ctime–n find . –mtime -n
find . –atime +n find . –ctime+n find . –mtime +n
一、atime、ctime與mtime
atime是指access time,即檔案被讀取或者執行的時間,修改檔案是不會改變access time的。網上很多資料都聲稱cat、more等讀取檔案的命令會改變atime,但是我試驗時卻發現使用cat、more時atime沒有被修改。這個問題需要另外做研究探討。
ctime即change time檔案狀態改變時間,指檔案的i結點被修改的時間,如透過chmod修改檔案屬性,ctime就會被修改。
mtime即modify time,指檔案內容被修改的時間。
使用stat可以檢視檔案的atime、ctime、mtime。
例:
stat ~/.bashrc
File:`/home/user_00/.bashrc'
Size: 1177 Blocks: 8 IO Block: 4096 regular file
Device: 801h/2049d Inode:663962 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 1003/ user_00) Gid:( 100/ users)
Access: 2009-12-21 10:45:35.000000000 +0800
Modify: 2009-12-21 10:45:35.000000000 +0800
Change: 2009-12-2110:45:35.000000000 +0800
也可以使用ls檢視檔案的atime、ctime、mtime。
通常情況下我們使用的ls –l ~/.bashrc指示的是檔案的modify time。
ls –lu ~/.bashrc 或者ls –l –time=atime~/.bashrc指示的是檔案的access time
ls –lc ~/.bashrc 或者ls –l –time=ctime~/.bashrc 指示的是檔案的change time
使用touch可以改變這三個時間。關於使用touch改變atime、ctime、mtime的方法,此處不做介紹。
二、find . –mtime中的引數n
find . –mtime n中的n指的是24*n, +n、-n、n分別表示:
+n: 大於n
-n: 小於n
n:等於n
但是man find裡這樣的解釋還是比較令人費解的,不如直接看find . -mtime 中的用法
find . –mtime n: File waslast modified n*24 hours ago. ------unix有區別
最後一次修改發生在距離當前時間n*24小時至(n+1)*24 小時
find . –mtime +n:
最後一次修改發生在n+1天以前,距離當前時間為(n+1)*24小時或者更早
find . –mtime –n:
最後一次修改發生在n天以內,距離當前時間為n*24小時以內
find /home/appadm/ftptest/ -mtime 0 -exec cp {} /home/appadm/todayfile \;
find /app/cfgbak/bak/* -mtime +4 -exec rm -r {} \;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29096438/viewspace-1625817/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【轉】find -atime -ctime -mtime區別
- Linux之 find之 ctime,atime,mtimeLinux
- Linux - find命令搭配atime/ctime/mtime的寫法Linux
- Linux中atime,ctime與mtime的細節疑問總結Linux
- Linux命令:atime,mtime,ctimeLinux
- Linux精講——atime、mtime、ctimeLinux
- Linux常用命令之 查詢命令 find —— 細說 -atime,-mtime,-ctimeLinux
- [20201105]mtime, ctime and atime in Linux.txtLinux
- get與post的區別總結
- find命令-mtime引數理解
- linux下find(檔案查詢)命令的用法總結Linux
- 詳解not in與not exists的區別與用法
- js中!和!!的區別與用法JS
- python函式與方法的區別總結Python函式
- springdatajpa 中get××方法與find××方法的區別Spring
- oracle下interval型別的用法總結Oracle型別
- ajax與jsonp的區別及用法JSON
- thchnique 與 technology的區別及用法
- post、get的區別總結
- Gerrit的用法及與gitlab的區別Gitlab
- systemctl的操作詳解總結及其與service的區別
- 思考與總結:扇區和磁碟塊的區別是什麼
- CSS中的class與id區別及用法CSS
- exists和not exists及in和not in的用法與區別
- ARRAYLIST VECTOR LINKEDLIST 區別與用法
- 總結MySQL儲存引擎MyISAM與InnoDB區別MySql儲存引擎
- has(),find()以及filter()方法的區別Filter
- 徹底搞明白find命令的-mtime引數的含義
- jQuery filter()和find()區別jQueryFilter
- type的用法總結
- sqlldr的用法總結SQL
- [JavaWeb]SpringMVC與Struts2區別與比較總結JavaWebSpringMVC
- JavaScript中apply、call、bind的區別與用法JavaScriptAPP
- cookie和session的區別(全面總結)CookieSession
- js中==和===的區別以及總結JS
- InnoDB和MyISAM區別總結
- 軟連結與硬連結的區別
- MyISAM與InnoDB兩者的區別、詳細總結、效能對比