Linux下如何使用find命令指定目錄查找文件
在進(jìn)行Linux命令操作的時(shí)候,有時(shí)會(huì)搜索出許多目錄,而這些目錄又不是我們所需要的,這時(shí)就可以將其忽略。下面學(xué)習(xí)啦小編就教大家如何使用find命令忽略子目錄。
使用find命令在linux系統(tǒng)中查找文件時(shí),有時(shí)需要忽略某些目錄,可以使用 -prune 參數(shù)來(lái)進(jìn)行過(guò)濾。
不過(guò)必須注意:要忽略的路徑參數(shù)要緊跟著搜索的路徑之后,否則該參數(shù)無(wú)法起作用。
例如:指定搜索/home/zth目錄下的所有文件,但是會(huì)忽略/home/zth/astetc的路徑:
代碼如下:
find /home/zth -path “/home/zth/astetc” -prune -o -type f -print
按照文件名來(lái)搜索則為:
代碼如下:
find /home/zth -path “/home/zth/astetc” -prune -o -type f -name “cdr_*.conf” -print
要忽略兩個(gè)以上的路徑如何處理?
代碼如下:
find /home/zth /( -path “/home/zth/astetc” -o -path “/home/zth/etc” /) -prune -o -type f -print
find /home/zth /( -path “/home/zth/astetc” -o -path “/home/zth/etc” /) -prune -o -type f -name “cdr_*.conf” -print
注意:/( 和/) 前后都有空格。
查找某個(gè)文件包含內(nèi)容,以下語(yǔ)句可以解決目錄帶空格的問(wèn)題:
代碼如下:
find 。/ -name “mysql*” -print0 |xargs -0 grep “SELECT lead_id FROM vicidial_list where vendor_lead_code”
如果目錄不帶空格,可以這樣:
代碼如下:
find 。/ -name “mysql*” |xargs grep “SELECT lead_id FROM vicidial_list where vendor_lead_code”
上面就是Linux下使用find命令查找文件時(shí)忽略子目錄的方法介紹了,如果你需要用到相關(guān)操作,而又對(duì)find命令的使用不是很熟悉的話,不妨來(lái)了解下本文,希望對(duì)你有所幫助。