Linux查找命令@which、find的使用方式
which概念
which 是一個常用的 Linux/Unix 命令,用于查找并顯示指定命令的絕對路徑。
語法
which 要查找的命令
- 無參數(shù)。
- which后面,跟要查找絕對路徑的命令。
作用
對于初學Linux操作系統(tǒng)的同學,有沒有這么一個疑問?
- 問題一:我們學習的關(guān)于Linux的基礎(chǔ)指令,指令自身是個什么?
- 問題二:為什么在終端中,輸入指令便能讓操作系統(tǒng)執(zhí)行相應(yīng)的動作?
- 回答一:其實我們學習的關(guān)于Linux的基礎(chǔ)指令,其實自身就是一個二進制可執(zhí)行的程序文件。
- 回答二:當在終端中,輸入特定的指令時,操作系統(tǒng)便會通過該指令所在的路徑,尋找過去找到該指令的二進制可執(zhí)行的程序文件,然后調(diào)用執(zhí)行程序。
操作系統(tǒng)是如何知道指令的絕對路徑,從而找過去的,這里先不過多講解。但是同學們會不會很好奇這些指令的絕對路徑究竟是什么?我們怎樣才能獲取這些指令的絕對路徑呢?接下來要講解的指令 which 的便起到該作用了。
如下:
通過which指令,在終端上顯示了前面所學cd 、 pwd 、 touch 、 mkdir 、 cp 、 mv可執(zhí)行二進制指令文件的絕對路徑。
以上便是對于which指令的學習與運用的大體介紹。
find概念
find指令用于在文件系統(tǒng)中搜索并匹配符合指定條件的文件或目錄。
語法按文件名查找
find 起始路徑 -name “被查找的文件名”
- 始路徑:從哪個路徑開始查詢。
- -name: 表示以文件名稱作為搜索依據(jù)
- 被查找的文件名” : 表示要搜索的文件的名稱。
按文件大小查找
find 起始路徑 -size +/-n[kMG]
- 起始路徑:從哪個路徑開始查詢。
- -size:表示以文件大小作為搜索依據(jù)。
- +: 表示大于
- - : 表示小于
- n:表示數(shù)字,中括號[ ] 里面的kMG為單位
作用
首先,對徐搜索文件這一行為,因為要涉及到系統(tǒng)內(nèi)的文件,因為存在權(quán)限的問題。
為了方便演示,下面切換到具有最高權(quán)限的root用戶。
具體發(fā)送 “su - root” 指令,然后輸入用戶密碼,即可成功切換到root用戶權(quán)限。如下:
演示一
以上演示的指令為 “ find / -name “test””。效果為:
從根目錄 / 開始,搜索文件名為“ find ” 的文件。
演示二
以上演示的指令為 “ find / -size +100M。效果為:
從根目錄 / 開始,搜索文件大小大于100M的文件。
為了驗證搜索出來的文件是否如我們所要求的一樣。我們對其中的一個文件進行查看,如下的綠色方框所示:
驗證結(jié)果顯示,搜索出來的文件確實滿足文件大小大于100M的要求。
演示三
以上演示的指令為 “ find / -size +1G。效果為:
從根目錄 / 開始,搜索文件大小大于1G的文件。
同時將搜索的文件,的詳細信息展開,信息大小驗證符合搜索要求。
通配符
注意:find指令還可以結(jié)合通配符。
被查找文件名,支持使用通配符 * 來做模糊查詢。
- 符號* 表示通配符,即匹配任意內(nèi)容(包含空),示例:
- test*,表示匹配任何以test開頭的內(nèi)容
- *test,表示匹配任何以test結(jié)尾的內(nèi)容
- *test*,表示匹配任何包含test的內(nèi)容
基于通配符的含義,可以結(jié)合find命令做文件的模糊查詢。
關(guān)于通配符的find相關(guān)指令,這里就不多加演示了,有興趣的同學可以自行實驗。
總結(jié)
1、which命令
- 查找命令的程序文件
- 語法:which 要查找的命令
- 無需選項,只需要參數(shù)表示查找哪個命令
2、find命令
- 用于查找指定的文件
- 按文件名查找: find 起始路徑 -name “被查找的文件名”
- 按文件大小查找: find 起始路徑 -size +/-n[kMG]
注:find命令支持通配符
為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
shell腳本報錯:"[: =: unary operator expected"解決辦法
這篇文章主要介紹了shell腳本報錯:"[: =: unary operator expected"解決辦法的相關(guān)資料,需要的朋友可以參考下2017-03-03LAMP服務(wù)器性能優(yōu)化技巧之Mysql優(yōu)化
目前LAMP (Linux + Apache + MySQL + PHP) 近幾年來發(fā)展迅速,已經(jīng)成為Web 服務(wù)器的事實標準。本文我們將介紹基于LAMP組合的服務(wù)器的性能優(yōu)化技巧:Mysql優(yōu)化2012-02-02