您好,登錄后才能下訂單哦!
小編給大家分享一下Linux中如何快速查找文件,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
find 命令應該是最經典的命令了,談到搜索工具第一個想到的肯定是 find 命令。但是,find 命令非常強大,想要把它的功能都介紹一遍,恐怕要寫好幾篇文章。
所以,這里就偷個懶,介紹最基本的,根據文件名查找文件的方法。假如我們想搜索當前目錄(及其子目錄)下所有 .sh 文件,可以這樣搜索:
locate 是另外一個根據文件名來搜索文件的命令。區別于 find 命令,locate 命令無需指定路徑,直接搜索即可。
這個命令不是直接去系統的各個角落搜索文件,而是在一個叫 mlocate.db 的數據庫下搜索。這個數據庫位于 /var/lib/mlocate/mlocate.db ,它包含了系統里所有文件的索引,并且會在每天早上的時候由 cron 工具自動更新一次。
正因為如此,locate 的搜索速度遠快于 find 命令,因為它直接在數據庫里檢索,速度自然更快。
locate 命令在找到文件之后,將直接顯示該文件的絕對路徑,比如:
但是 locate 命令有個弊端,它無法搜索當天所創建的文件,因為它的數據庫一天只在早上更新一次。比如我現在創建一個新文件,locate 沒辦法搜索到:為了解決這個問題,我們可以使用 updatedb 命令手動去更新它的數據庫: sudo updadb
which 命令主要用來查找可執行文件的位置,它搜索的位置指定在 及MANPATH 環境變量下的值,默認情況下,which 命令將顯示可執行文件的第一個存儲位置:
如果某個可執行文件存儲在多個位置,可以使用 -a 選項列出所有的位置。
如果你想一次性查找多個文件,可以直接跟在 which 命令后面即可。
whereis 命令會在系統默認安裝目錄(一般是有root權限時默認安裝的軟件)查找二進制文件、源碼、文檔中包含給定查詢關鍵詞的文件。(默認目錄有 /bin, /sbin, /usr/bin, /usr/lib,/usr/local/man等類似路徑)。
一般包含以下三部分內容:
二進制文件的路徑
二進制文件的源碼路徑
對應 man 文件的路徑
比如我們現在搜索 ls 命令:
我們可以使用 -b 選項來只搜索可執行文件所在位置,使用 -B 選項指定搜索位置,使用 -f 選項列出文件的信息。
同樣地,我們可以使用 -s 限定只搜索源碼路徑,使用 -m 搜索 man page 路徑,使用 -s 指定搜索源代碼文件的路徑,使用 -M 指定搜索幫助文件的路徑。
以上是“Linux中如何快速查找文件”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。