如何使用 Linux 搜尋檔案?

如何使用 Linux 搜尋檔案?

您是否知道一種按名稱遞歸查找文件或內容的好方法,類似於 Linux 中的 ms-windows 函數搜尋?我可以find . | grep test.html懷疑這不是最好的。感謝您的任何答覆。

例如,運行find . | grep terms.html給出了我的預期結果,但locate terms.html即使locate 更新了資料庫也沒有給出結果——這可能與文件所在的USB 記憶棒有關?

答案1

命令是find,像這樣

 find . -iname '*hellofiles*'

你說 find ·location· -iname 意味著不區分大小寫,如果你願意的話,「」中是正規表示式。

find /home/user -iname '*zip' 將找到 /home/user 中的所有 zip 檔案

如果您想要更快地查找,可以使用locate,有一個實用程式可以定期掃描光碟,例如每週或每天,具體取決於它的設定方式

locate myfile

它會在資料庫中尋找 updatedb 是否在任何地方看到了 myfile。

答案2

find有許多選項,允許它按名稱、正則表達式甚至更複雜的條件(例如大小或所有權)來查找檔案。例如

find . -iname '*.txt'

另請參閱連結手冊頁中的範例部分。

也就是說,find每次調用它時都需要搜尋檔案系統,這具有明顯的缺點。這locate另一方面,實用程式有許多變體,它使用系統中定期更新的檔案資料庫。

答案3

如果是軟體包: dpkg -L 軟體包名稱

或者,如果您知道它位於特定資料夾中,請新增 grep 的使用,例如:

dpkg -L 軟體包名稱 | grep 資料夾名稱

例如,您剛剛安裝了 Chromium,您需要知道 bin 在哪裡

dpkg -L chromium 瀏覽器 | grep bin

答案4

find . -name test.html或者你也可以使用萬用字元:find . -name \*test.html

相關內容