find命令的工作方式如下:沿著檔案層次結構向下遍歷,匹配符合條件的檔案,並執行相應的操作。
選項-name的引數指定了檔名所必須匹配的字串。我們可以將萬用字元作為引數使用。
而-iname引數則是忽略大小寫。
如果想匹配多個條件中的乙個,可以採用or條件操作:
如果是且的條件則可以什麼都不寫,也可以寫-and。
選項-path可以使用萬用字元來匹配檔案路徑或檔案。-path將檔案路徑作為乙個整體進行匹配。
選項-regex基於正規表示式來匹配檔案路徑的。
可以用!否定引數的含義。
find命令在使用時會遍歷所有的子目錄。我們可以採用一些深度引數來限制find命令遍歷的深度。-maxdepth和-mindepth就是這類引數。
如果只需在當前目錄中進行檢索,則可以設定最大深度-maxdepth為1:
而最小深度-mindepth則可以用來查詢那些距離起始路徑超過一定深度的所有檔案。
-type選項可以根據檔案型別來進行搜尋。
下表顯示了所有的檔案型別引數:
檔案型別
型別引數
普通檔案
f符號鏈結l目錄
d字元裝置
c塊裝置
b套接字
sfifop
linux檔案系統中的每乙個檔案都有三種時間戳,如下所示:
· 訪問時間(-atime):使用者最近一次訪問檔案的時間。
· 修改時間(-mtime):檔案內容最後一次被修改的時間。
· 變化時間(-ctime):檔案元資料最後一次改變的時間。
在linux中沒有所謂「建立時間」的概念。
-atime、-mtime、-ctime可以作為find的時間選項,它們可以整數值給出,單位是天。數值前可以加上加號或者減號,表示大於或者小於多少天。
上圖三行命令分別表示7天之內訪問過、7天之前訪問過以及恰好7天前訪問過三種情況。
對應的-amin,-mmin,-cmin用來表示分鐘。
-newer引數可以找到比參考檔案更新的所有檔案。
選項-size可以基於檔案的大小來進行搜尋。
在find命令最後加上-delete選項可以刪除查詢到的匹配檔案。
選項-perm可以匹配特定許可權的檔案:
-exec選項可以讓find和其他命令一起執行:
-exec還可以執行sh檔案:
注意:查詢到多少個檔案就執行sh檔案多少遍。
linux find命令學習記錄
查詢檔案 find type f 查詢目錄 find type d 查詢名字為test的檔案或目錄 find name test 查詢名字符合正規表示式的檔案,注意前面的 查詢到的檔案帶有目錄 find regex so.gz 查詢目錄並列出目錄下的檔案 為找到的每乙個目錄單獨執行ls命令,沒有選項...
linux find命令應用
功能說明 查詢檔案或目錄 語法 find 目錄.amin 分鐘 anewer 參考檔案或目錄 atime 24小時數 cmin 分鐘 cnewer 參考檔案或目錄 ctime 24小時數 daystart depyh empty exec 執行指令 false fls 列表檔案 follow fpr...
Linux find命令小結
find 命令 今天瀏覽了下linux下find 的man文件,涉及的細節很多,僅把常用的部分整理出來,供後續豐富補充吧。find命令格式 usage find path expression path預設為當前路徑,expression預設為 print項 expressions有以下幾種組成 o...