grep helloworld -rn * 在當前目錄下的所有檔案中查詢「helloworld」字串
查詢所有".h"檔案(非組合命令)
find /path -name "*.h"
查詢所有".h"檔案中的含有"helloworld"字串的檔案(組合命令)
查詢所有".h"和".c"檔案中的含有"helloworld"字串的檔案find /path -name "*.h"
-exec grep -in "helloworld"
\;find /path -name "*.h"
| xargs grep -in "helloworld"
查詢非備份檔案中的含有"helloworld"字串的檔案find /path /
(-name "*.h"
-or -name "*.c"/)
-exec grep -in "helloworld"
\;
find /path /
(-not -name "*~"/)
-exec grep -in "helloworld"
\;
注:/path為查詢路徑,預設為當前路徑。帶-exec引數時必須以;結尾,否則會提示「find: 遺漏「-exec」的引數」。
find pathname -options [-print -exec -ok] -optinos
1)-name:按照檔名查詢
2)-perm:按照許可權查詢檔案find ~
-name 「*
.txt」 -print
find ~
-name 「[a-z][0
-9].txt」 -print
3)-prunefind ~
-perm 755
-print 查詢許可權為755的檔案
find ~
-perm 007
-print 查詢o位置上具有7許可權的檔案
find ~
-perm 4000
-print 查詢具有suid的檔案
不在當前目錄下查詢
4)-user和-nouser
5)-group和-nogroupfind ~
-user zhao -print 查詢檔案屬主是zhao的檔案
find ~
-nouser -print 查詢檔案屬主已經被刪除的檔案
find ~
-group zhao -print 查詢檔案群組是zhao的檔案
6)按照時間
7)按照型別查詢find ~
-mtime -
5-print 檔案更改時間在5天內的檔案
find ~
-mtime +
3-print 檔案更改時間在3天前的檔案
find ~
-newer file1 -print 查詢比檔案file1新的檔案
8)按照大小find ~
-type d -print 查詢所有目錄
9)查詢位於本檔案系統裡面的檔案find ~
-size +
1000000c -print 查詢檔案大小大於1000000位元組(
1m)的檔案
find命令對於匹配檔案執行該引數所給出shell命令,相應命令形式為: 『command』 {} ;`find /
-name 「*
.txt」 -mount -print -exec,
-ok`
-ok 在執行命令前要確認
find ~ -type f -exec ls -l {} ;
find / -name 「*.log」 -mtime +5 -ok rm {} ;
find . -name core -exec rm {} ;
使用-x dev引數 防止find搜尋其他分割槽
find . -size 0 -exec rm {} ;
刪除尺寸為0的檔案
2. xargs與-exec功能類似
在所有檔案中檢索字串maryfind ~
-type f | xargs ls -l
find /
-name 「*
.log」 -type f -print| xargs grep -i db0
find .
-type f |xargs grep -i 「mary
ls *~ |xargs rm -rf
刪除所有以~結尾的檔案
Linux中的find指令
linux下的find命令在目錄結構中搜尋檔案,並執行指定的操作。linux下的find命令提供了相當多的查詢條件,條件很強大。find具有強大的功能,所以他的選項也很多,計時系統中含有網路檔案系統 nfs find命令在該檔案系統中同樣有效,只要具有相應的許可權。在執行乙個非常消耗資源的find命...
Linux面試指令 find指令 二
下面將介紹如何根據檔案型別 許可權 所有者及操作符來查詢匹配檔案。根據檔案型別來查詢檔案,使用 type 選項,常見 find 檔案型別見下表。檔案型別描述b 塊裝置檔案 c字元裝置檔案d目錄 f普通檔案 l符號鏈結 根據檔案許可權查詢檔案,使用 perm 選項。所有者使用 user 選項。另外,f...
linux下的find指令
在linux下我們可以用到三個命令來查詢檔案,通常我們都是先使用whereis或者是locate來檢查,如果真的找不到了我們才以find來找。為什麼呢?因為whereis和locate是利用資料庫來查詢資料,所以相當快速,而且並沒有實際查詢硬碟,比較節省時間。但是find是直接查詢硬碟,如果你的硬碟...