linux下find命令和文件的三種時間

    Linux下find命令在目錄結構中搜索文件,並執行指定的操作。Linux下find命令提供了相當多的查找條件,功能很強大。由於find具有強大的功能,所以它的選項也很多,其中大部分選項都值得我們花時間來了解一下。即使系統中含有網絡文件系統( NFS),find命令在該文件系統中同樣有效,只你具有相應的權限。

    

linux下find命令的用法


 find   -name          //根據文件名查找(精確查找)

 find   -name  "*.txt" //根據關鍵字查找

 find   -iname        //根據文件名查找,但是不區分大小寫

 find   -name  a*     //在當前目錄下查找以a開始的文件


wKiom1dDBu3zAp1jAAAlsKBtgrk434.png

wKioL1dDCBKgLc5LAAAQ23atZSo841.png


 2. 按尺寸查找:


      find / -size 1500c (查找1,500字節大小的文件,c表示字節)

      find / -size +1500c (查找大於1,500字節大小的文件,+表示大於)    

      find / -size -1500c (查找小於1,500字節大小的文件,-表示小於) 


wKioL1dDCD_wRzXEAABIHHynvjw591.png


3. 按時間:


      find / -amin n 最後n分鐘 

      find / -atime n 最後n天

      find / -cmin n 最後n分鐘改變狀態

      find / -ctime n 最後n天改變狀態

      find / -mmin  n 查找系統中最後N分鐘被改變文件數據的文件

      find / -mtime n 查找系統中最後n*24小時被改變文件數據的文件


wKioL1dDCIbQqnGnAAAhtGe768Q548.png

wKioL1dDCLvDDnKVAAAqz2Pnbrk777.png

wKioL1dDCOXilwcVAAAdMKfX-Y8229.png


4. 其它:


      find / -empty 空白文件、空白文件夾、沒有子目錄的文件夾

      find / -false 查找系統中總是錯誤的文件

      find / -fstype type 找存在於指定文件系統的文件,如type爲ext2

      find / -gid n 組id爲n的文件

      find / -group gname 組名爲gname的文件

      find / -depth n 在某層指定目錄中優先查找文件內容

      find / -maxdepth levels 在某個層次目錄中按遞減方式查找


 5. 邏輯


      -and 條件與

      -or  條件或


1.命令參數:

=======================================================    


                #查找名爲filename的文件

-perm                    #按執行權限來查找

-user  username          #按文件屬主來查找

-group groupname         #按組來查找

-mtime -n +n(+n指n天以前)#按文件更改時間來查找文件,-n指n天以內

-atime -n +n             #按文件訪問時間來查GIN: 0px">-perm 


wKioL1dDCRvA8jKOAABLAyARB2g849.png



      

========================================================


                 #按執行權限來查找

-user  username        #按文件屬主來查找

-group groupname       #按組來查找

-mtime -n +n           #按文件更改時間來查找文件,-n指n天以內,

-atime -n +n           #按文件訪問時間來查找文件,-n指n天以內,

-ctime -n +n           #按文件創建時間來查找文件,-n指n天以內,

-nogroup               #查無有效屬組的文件,即文件的屬組

-newer  f1 !f2         找文件,-n指n天以內,+n指n天以前 

-ctime  -n +n          #按文件創建時間來查找文件,-n指n天以內,

-nogroup               #查無有效屬組的文件,即文件的屬組

-nouser                #查無有效屬主的文件,即文件的屬主

-newer f1 !f2          #查更改時間比f1新但比f2舊的文件

-type  b/d/c/p/l/f    #查是塊設備、目錄、字符設備、管道、符號

===========================================================


                    鏈接、普通文件

-size n[c]          #查長度爲n塊[或n字節]的文件

-depth              #使查找在進入子目錄前先行查找完本目錄

-fstype             #查更改時間比f1新但比f2舊的文件

-mount              #查文件時不跨越文件系統mount點

-follow             #如果遇到符號鏈接文件,就跟蹤鏈接所指的文

===========================================================                                    

二.在windows下,一個文件有:創建時間、修改時間、訪問時間。而在Linux下,


一個文件也有三種時間,分別是:訪問時間、修改時間、狀態改動時間。


mtime:文件最近內容修改的時間

ctime:文件最近屬性和權限修改的時間

atime:文件最近被訪問的時間

 

1.ls -l filename(ls默認顯示的是mtime)

 

  -rw-rw-r-- 1 lawrance lawrance 27 Oct  5 02:09 filename


  wKiom1dDCFbyu_YNAAAPWGWuaqI162.png


 

2.ls -l --time=ctime filename 


  -rwxr-xr-x 1 lawrance lawrance 27 Oct  6 02:50 filename

 

3.ls -l --time=atime filename 


  -rw-rw-r-- 1 lawrance lawrance 27 Oct  6 02:30 filename


wKioL1dDCW2gvvETAAAfZsGnDl0781.png



另外,可以格式化輸出文件的三種時間,如:


1.find . -name file -printf "%AY-%Am-%Ad %AH:%AM:%AS"

2.find . -name file -printf "%TY-%Tm-%Td %TH:%TM:%TS"

3.find . -name file -printf "%CY-%Cm-%Cd %CH:%CM:%CS"


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章