linux的五個查詢命令:find,locate,whereis,which,type 及其區別
find 可找到想找的任何檔案
find path -option
find
. -name "my*"
#當前目錄(含子目錄,以下同)查詢所有檔名以my開頭的檔案
find
. -name "my*" -ls #當前目錄(含子目錄,以下同)查詢所有檔名以my開頭的檔案,並顯示詳細資訊
find
. -type d #檢視當前目錄下所有目錄(包括子目錄包含的所有目錄)
find
. -type f #檢視當前目錄下所有檔案(包括子目錄包含的所有檔案)
#----------------------------
# brief:與xargs結合使用
#----------------------------
find
. -name "*x64*"
|xargs
rm -rf #刪除搜尋的結果,find、rm組合使用
find
. -mtime +10 -name "*"
|xargs
rm#刪除搜尋到的10天前的任何檔案
find
. -mmin +10 -name "*"
|xargs
rm#刪除搜尋到的10mins前的任何檔案
find
. -maxdepth 1 -group root -name bin #只查詢當前目錄下隸屬root使用者的名稱為bin的檔案
find
. -group root -name bin #只查詢當前目錄及其所有子目錄下隸屬root使用者的名稱為bin的文 件
find
. -name "*.cpp"
|xargs
grep -n "main()"
#在當前目錄及子目錄中所有cpp檔案中搜尋關鍵字main(),並 顯示行號
locate
linux每天自動更新一次包含本地所有檔案資訊的資料庫,locate不搜尋具體目錄而是搜尋這個資料庫,因此locate查不到最新變動過的檔案,因此使用locate命令之前可以先使用updatedb手動更新資料庫
updatedb
#搜尋test中所有以fil開頭的檔案,即使當前目錄為test,也不能用locate ./fil
locate /home/lyu/desktop/test/fil
locate ~/desktop/test/fil
whereis
用於對程式名的搜尋,
whereis
grep
#返回grep二進位制檔案的路徑、man說明檔案和引數檔案的路經
whick
path變數指定的路徑中,搜尋某個系統命令的位置,可檢視某個系統命令是否存在
which
find
#返回"/usr/bin/find"
grep資料查詢、匹配定位
grep
"boo" file1 #查詢檔案file1中包含"boo"的每一行
grep -n "boo" file1 #查詢檔案file1中包含"boo"的每一行,帶行號
grep -c "boo" file1 #查詢檔案file1中包含"boo"共多少行,只顯示匹配到的行的數量,小於等於"boo"的個數
grep -vn "boo" file1 #查詢檔案file1中不包含"boo"的每一行,帶行號
n #顯示行號
i #匹配字串是忽略大小寫
c #顯示匹配到的行數
grep
"e$" file1 #搜尋file1中以e結尾的行,只有一行的最後乙個字元為e才符合
type linux 查詢命令
從檔案內容查詢匹配指定字串的行 grep 被查詢的字串 檔名 在當前目錄裡第一級資料夾中尋找包含指定字串的.in檔案 grep thermcontact in 從檔案內容查詢與正規表示式匹配的行 grep e 正規表示式 檔名 查詢時不區分大小寫 grep i 被查詢的字串 檔名 查詢匹配的行數 g...
Linux 查詢命令
linux 查詢操作命令 1.在某目錄下查詢名為 elm.cc 的檔案 find home lijiajia name elm.cc 2.查詢檔案名中包含某字元 如 elm 的檔案 find home lijiajia name elm find home lijiajia name elm fin...
linux 查詢命令
查詢字段 grep hell.text.log 查詢text.log檔案中帶有hell的字段 e 開啟擴充套件 extend 的正規表示式。i 忽略大小寫 ignore case v 反過來 invert 只列印沒有匹配的,而匹配的反而不列印。n 顯示行號 w 被匹配的文字只能是單詞,而不能是單詞中...