分類

展開全部 | 收合全部

分類

展開全部 | 收合全部

【Linux 搜尋內容 #5】find – 搜尋檔案名稱,並進行進一步處理 (顯示相對路徑、絕對路徑、刪除、重新命名、執行特定指令)

前言

以搜尋檔案而言 (不包含檔案內容),最好用的應該就是 find 指令了,
透過搭配 exec,還可以多執行一些額外功能

範例

基本搜尋

find ./ -name "test.txt"

檔案名稱可以用正規表達式,例如 *.txt 就是搜尋所有的 txt 檔案
而 ./ 可以是相對或絕對路徑,

搜尋檔案,並顯示絕對路徑

find ~+ -name "*.txt" 

~+ 是一種表示式,總之可以讓結果顯示為絕對路徑

搜尋檔案,並刪除

find ./ -name "*.txt" -delete

小心使用,刪了基本找不回來,等同於 rm 的效果

搜尋檔案,並執行特定指令

find ./ -name "*.txt" -exec ls -l {} \;

這裡表示對搜尋結果執行 ls -l,{} 可以取代前面的結果

  • -exec 就是執行後面的指令,需要搭配 \; 結尾表示指令結束
  • -execdir 如果不要完整的相對路徑,只需要最後的檔名可以用這個,經常用於對於大量資料夾檔案的單一檔名替換
Howard Weng
Howard Weng

我是 Howard Weng,很多人叫我嗡嗡。這個網站放了我的各種筆記。希望這些筆記也能順便幫助到有需要的人們!如果文章有幫助到你的話,歡迎幫我點讚哦!
另外,因為定位是「個人的隨手筆記」,有些文章內容「⚠️可能我理解有誤⚠️」或「?只寫到一半?」,如果有發現這樣的情況,歡迎在該文章的最下面留言提醒我!我會儘快修正或補上!感謝大家的建議與幫忙,讓網站能變得更好?

文章: 889

★留個言吧!內容有誤或想要補充也歡迎與我討論!