find . ( -name "*.txt" -o -name "*.pdf" ) -print
演示結果:
find . -regex ".*(.txt|.pdf)$"
-iregex: 忽略大小寫的正則
查詢所有非txt文字
find . ! -name "*.txt" -print
演示結果:
列印出當前目錄的檔案(深度為1)
find . -maxdepth 1 -type f
演示結果:
5.1 按型別搜尋
-type b/d/c/p/l/f #查是塊裝置[b]、目錄[d]、字元裝置[c]、管道[p]、符號鏈結[l]、普通檔案[f]//只列出所有目錄find . -type d -print
演示結果:
5.2 按時間搜尋
-atime 訪問時間 (單位是天,分鐘單位則是-amin,以下類似)-mtime 修改時間 (內容被修改)-ctime 變化時間 (元資料或許可權變化)
時間引數:
+n天以外修改的檔案
n正好 n天 修改的檔案
-nn 天以內修改的檔案
舉例1: 查詢 /etc 目錄下,5天以內修改 且以 conf 結尾的檔案。 find /etc -mtime -5 -name '*.conf'
舉例2: 查詢 /etc 目錄下,10天之前修改,且屬於 yangyang 的檔案。 find /etc -mtime +10 -user yangyang
演示7天以內被訪問過的所有檔案:
find . -atime -7 -type f -print
演示結果:
5.3 按大小搜尋
w字 k m g
尋找大於2k的檔案
find . -type f -size +2k
5.4 按許可權查詢
//找具有可執行許可權的所有檔案find . -type f -perm 644 -print
5.5 按使用者查詢
// 找使用者weber所擁有的檔案find . -type f -user weber -print
5.6 找到後的後續動作5.6.1 刪除
刪除當前目錄下所有的swp檔案:
find . -type f -name "*.swp" -delete
5.6.2 執行動作(強大的exec)
//將當前目錄下的所有權變更為weberfind . -type f -user root -exec chown weber {} ;
注:{}是乙個特殊的字串,對於每乙個匹配的檔案,{}會被替換成相應的檔名;
eg:將找到的檔案全都copy到另乙個目錄:
find . -type f -mtime +10 -name "*.txt" -exec cp {} old ;
5.7 結合多個命令
tips: 如果需要後續執行多個命令,可以將多個命令寫成乙個指令碼。然後 -exec 呼叫時執行指令碼即可;
-exec ./commands.sh {} ;
-print的定界符
預設使用' '作為檔案的定界符;
-print0 使用''作為檔案的定界符,這樣就可以搜尋包含空格的檔案;
Linux指令篇 find命令
find name txt o name pdf print演示結果 find regex txt pdf iregex 忽略大小寫的正則 查詢所有非txt文字 find name txt print演示結果 列印出當前目錄的檔案 深度為1 find maxdepth 1 type f演示結果 5....
Linux 命令 find 命令
find是日常工具箱中功能更強大 更靈活的命令列工具之一,因此值得花費更多的時間。最簡單的,find跟上路徑尋找一些東西。例如 find 它將找到 並列印出 系統中的每個檔案。而且由於一切都是檔案,你會得到很多需要整理的輸出。這可能不能幫助你找到你要找的東西。你可以改變路徑引數來縮小範圍,但它不會比...
linux命令 find命令
一 根據名稱查詢檔案和目錄 二 根據許可權查詢檔案和目錄 三 基於所有者和組查詢檔案和目錄 四 根據日期和時間查詢檔案和目錄 五 根據大小查詢檔案和目錄 一 根據名稱查詢檔案和目錄 1 使用當前目錄中的名稱查詢檔案 find test.c 2 在主目錄下查詢檔案 find home name tes...