您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關linux中如何使用Find命令忽略某個或多個子目錄的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
使用find命令在linux系統中查找文件時,有時需要忽略某些目錄,可以使用 -prune 參數來進行過濾。
不過必須注意:要忽略的路徑參數要緊跟著搜索的路徑之后,否則該參數無法起作用。
例如:指定搜索/home/zth目錄下的所有文件,但是會忽略/home/zth/astetc的路徑:
代碼如下:
find /home/zth -path "/home/zth/astetc" -prune -o -type f -print
按照文件名來搜索則為:
代碼如下:
find /home/zth -path "/home/zth/astetc" -prune -o -type f -name "cdr_*.conf" -print
要忽略兩個以上的路徑如何處理?
代碼如下:
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
注意:/( 和/) 前后都有空格。
查找某個文件包含內容,以下語句可以解決目錄帶空格的問題:
代碼如下:
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"
通過以上的例子,大家應該可以掌握find命令查找文件時,忽略相關目錄的方法了。
感謝各位的閱讀!關于“linux中如何使用Find命令忽略某個或多個子目錄”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。