除了find命令,還有這麼多檔案查詢命令!
檔案搜尋
遠不止一個 find
,還有很多。本文就對
下檔案搜尋命令進行一個科普,讓你能夠在短時間內找到自己需要的檔案。
|
在系統裡查詢檔案,是所有工程師都必備的技能(不管你用的是 Windows 、Linux、還是 MacOS 系統)。對於 Linux 作業系統,單單一個 find 命令就可以完成非常多的搜尋工作。
但是,檔案搜尋命令遠不止一個 find 命令,還有很多。本文就對 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 命令主要用來查詢可執行檔案的位置,它搜尋的位置指定在 $PATH 及 $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 指定搜尋幫助檔案的路徑。
原文地址:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31559985/viewspace-2701060/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- linux 查詢檔案命令 findLinux
- python檔案查詢之find命令Python
- Find命令查詢最近幾天修改的檔案
- 檔案查詢命令
- Linux常用命令之檔案查詢which、find、locate命令講解Linux
- 命令列技巧:使用 find 和 xargs 查詢和處理檔案命令列
- linux命令檢視記憶體命令free -h whereis locate find查詢命令Linux記憶體
- linux中查詢find命令的複雜用法Linux
- 檔案屬性及find命令總結
- 檔案編輯、打包壓縮與查詢命令
- findmnt命令查詢已掛載的檔案系統
- 查詢指定的檔案:find、locate、which、whereis
- Linux下的五個查詢命令:grep、find、locate、whereis、whichLinux
- Linux下如何查詢檔案或目錄?常用命令是什麼?Linux
- find命令
- Linux中的查詢命令:find、locate、whereis、which、type及其區別Linux
- 如何使用find和xargs查詢和處理檔案
- linux批次find查詢檔案並批次替換覆蓋該檔案Linux
- sql常用查詢命令SQL
- 在Linux中,如何使用grep命令查詢檔案中的內容?Linux
- find -newer命令
- linux中file命令和find命令Linux
- ffmpeg命令分類查詢
- Linux系列之查詢命令Linux
- `find` 命令詳解
- find 命令及其示例
- find 命令入門
- grep、find命令整理
- Linux使用者資訊查詢命令有哪些?linux運維命令學習Linux運維
- Linux檢視檔案的命令有哪些?Linux
- linux每日命令(20):find命令概覽Linux
- 使用 sed 命令查詢和替換檔案中的字串的 16 個示例字串
- 使用sed 命令查詢和替換檔案中的字串的方法總結字串
- Linux使用者資訊查詢及磁碟與檔案系統管理命令!Linux
- 除了直播點播IPTV系統還有這麼多功能?
- nslookup命令怎麼用?如何查詢DNS解析故障?DNS
- mysql命令列查詢亂碼怎麼解決?MySql命令列
- 檔案查詢