Linux中,whereis和locate都是基於文件數據庫進行文件和目錄的查找的,而find則會去查找硬盤,因此,儘管可能會比較費時間,但倒是最精確和最可靠的。本文介紹下find命令的詳細用法。數據庫
命令格式ide
find命令通常使用格式爲:3d
find [pathname] [options] [-exec…],即,能夠加的選項不少。如圖。指針
常見參數blog
pathname:所查找的目錄路徑ip
該路徑能夠是一個路徑,也能夠是多個。get
-print:將查看結果輸出,這是默認選項it
-exec:用法爲-exec COMMAND {} \; ,指針對find的查找結果,執行COMMAND命令。io
常見選項class
-name NAME:按照文件名進行查找
須要注意的是,-name和文件name之間並無等於號。
-perm PERM:按照文件權限進行查找
上圖中,查找/bin下權限大於4000的文件,即查找出了全部的SUID文件。同理,全部的SGID文件(目錄)權限爲+2000,而全部的SBIT目錄的權限爲+1000.
結合-exec選項,能夠將查找結果ls出來,以下:
須要注意的是,{}中間無空格。
-user USER:按照用戶名進行查找
-group GROUP:按照組名進行查找
-mtime n/+n/-n:按照文件的更改時間來查找,n表示n天前24小時內修改過的文件,+n表示n天前修改過的文件,-n表示n天內修改過的文件。好比說,n爲4,則+n/-n/n意思以下:
好比:
上圖表示查找從當前起前24小時內更改過的文件。
-nouser:查找無有效用戶的文件
當刪除某用戶時,該用戶所建立的文件就成了無有效用戶文件。
-nogroup:查找無有效組的文件
-newer file1:查找比file1更改時間新的文件
-type:查找某一類型的文件,如:
b:查找塊設備文件
d:查找目錄
c:查找字符設備文件
p:查找管道文件
l:查看連接文件
f:查找普通文件
-size n:查找文件大小爲n的文件,也能夠使用+、-來表示大於或小於N的文件。