LInux 基礎知識 命令行 (四) 搜索

1. find

   按照名稱查詢:
   
   find [搜索範圍]  [匹配條件]
   find  [搜索範圍] -name  關鍵詞
   find            -name  init* ## ※匹配
   find            -name  init??? ## init後面是三個字符的
   find            -iname  關鍵詞   ## 不區分大小寫
------------------------------------------------------------
  按照文件大小查詢:
  find   [搜索範圍]  -size  +n(大於)  -n(小於) =n(等於)
------------------------------------------------------------
  按照所有者查詢:
  find   [搜索範圍]  -user  關鍵詞
-------------------------------------------------------------
  根據時間查詢
  find [搜索範圍]  -cmin 5     ## 文件屬性改變
  find [搜索範圍]  -amin 5  ## 訪問時間
  find [搜索範圍]  -mmin 5  ## 文件內容改變

----------------------------------------------------------------

-type 參數  : f 文件    d 目錄   l 軟連接
-a    同時滿足
-o   滿足一個即可

find  /etc     -name int*  -a -type f ## 查找etc目錄下 名稱以int開頭的文件

find /etc  -name init  -exec ls -l {} \;   ## 對搜索結果進行執行操作

--------------------------------------------------------
-inum  根據節點查找

2. locate

類似於windows的everything 工具,可以更加快速的查找,它是在文件資料庫中查找文件,而不是實時的全盤查找。

   locate 文件名
   locate  -i 文件名  # 不區分大小寫

我們可以使用

    locate locate # 可以找到locate 維護的文件資料庫位置

在這裏插入圖片描述

即 var/lib/mlocate/mlocate.db就是 文件資料庫。當然如果此時我新建一個文件,那麼在使用 locate 命令是找不到該文件的,因爲文件資料庫並沒有更新。那麼怎麼更新文件資料庫呢?我們可以使用

   updateddb   # 更新文件資料庫

當然如果我在 tmp目錄下新建文件,即使執行了 updated,仍然找不到,因爲文件資料庫不會收集tmp目錄下的文件

3. which

搜索命令所在地的目錄以及別名信息

  which  命令

4. whereis

查找命令所在目錄,以及幫助文檔位置

5. grep (查找文件內容)

    grep 關鍵詞  路徑
    grep -i 關鍵詞  路徑  # 不區分大小寫
    grep -v ^關鍵詞  路徑  # 排除查找
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章