首頁 運維 linux運維 Linux下find和grep區別和常用指令介紹

Linux下find和grep區別和常用指令介紹

Jul 16, 2017 am 11:45 AM
find grep linux

find

功能:在目錄結構中搜尋文件,並執行指定的操作。此命令提供了相當多的查找條件,功能很強大。 
語法: find 尋找位置 符合檔案名稱 
說明:find指令從指定的起始目錄開始,遞歸地搜尋其各個子目錄,尋找符合尋找條件的檔案並採取相關的動作。

grep

grep全名為Global Regular Expression Print。 
一種強大的文本搜尋工具,它能使用正規表示式搜尋文本,並列印配對的行。 
語法:grep 符合字串 檔案名稱

在使用linux時,經常需要進行檔案尋找。其中查找的指令主要有find和grep。兩個指令是有差別的。

  區別:

            (1)find指令是根據檔案的屬性

#也都很好名,檔案大小,擁有者,所屬群組,是否為空,存取時間,修改時間等。

               (2)grep是依照檔案的內容尋找,並為檔案的每一行依照給定的模式(patter)進行配對查找。

  一.find指令

    基本格式:find  path expression    

1.

##    (1)find / -name httpd.conf  #在根目錄下尋找檔案httpd.conf,表示在整個硬碟中尋找

##    (2)find/etc -name httpd. conf  #在/etc目錄下檔案httpd.conf

    (3)find /etc -name '*srm*'  #使用萬用字元*(0或任意多個)。表示在/etc目錄下尋找檔案名稱中含有

字串

'srm'的檔案

    (4)find . -name 'srm*'   #表示目前目錄下尋找檔案名稱開頭是字串'srm'的文件

    

2.按照文件特徵查找

    (1)find / -amin -10   # 查找在系統中最後10分鐘訪問的檔案(access time)

    (2)find / -atime -2   # 尋找在系統中最後48小時存取的檔案

    (3)find 尋找 -empty  #    為空的檔案或資料夾    (4)find / -group cat   # 找出在系統中屬於group為cat的檔案     (5)find / -mmin -5 ##    (5)find / -mmin -5#系統中最後5分鐘修改過的檔案(modify time)

    (6)find / -mtime -1   #找出在系統中最後24小時裡修改過的檔案

  #     )find / -user fred   #找出在系統中屬於fred這個使用者的檔案

    (8)find / -size +10000c  #出大於100000000字,k:KB,M:MB,G:GB)

    (9)find / -size -1000k   #找出小於1000KB的檔案

   #找出小於                  使用混合查找方式尋找檔案

    參數有:! ,-and(-a),-or(-o)。

    (1)find /tmp -size +10000c -and -mtime +2   #在/tmp目錄下找出大於10000位元組並在最後2分鐘內修改的檔案

## )find / -user fred -or -user george   #在/目錄下尋找使用者是fred或george的檔案檔案

         (3)find /tmp ! -user panda     (3)find /tmp ! -user panda  #在所有不/tmp目錄中找到不/tmp目錄目錄中。屬於panda使用者的文件       

  

二、grep指令############     基本格式:find# #######   1.主要參數#########    [options]主要參數:###

    -c:只輸出匹配行的計數。
    -i:不區分大小寫
    -h:查詢多檔案時不顯示檔案名稱。
    -l:查詢多檔案時只會輸出包含符合字元的檔案名稱。
    -n:顯示符合行及行號。
    -s:不顯示不存在或無符合文字的錯誤訊息
    -v:顯示所有不包含符合文字的行。

    pattern正規表示式主要參數:

    \: 忽略正規表示式中特殊字元的原有意義。
    ^:符合正規表示式的開始行。
    $: 符合正規表示式的結束行。
    \<:從符合正規表示 式的行開始。
    \>:到符合正規表示式的行結束。
    [ ]:單一字符,如[A]即A符合要求 。
    [ - ]:範圍,如[A-Z],即A、B、C一直到Z都符合要求 。
    .:所有的單一字元。
    * :有字符,長度可以為0。

    2.實例

#  (1)grep 'test' d*  #顯示所有以d開頭的檔案中包含test的行

 ( 2)grep 'test' aa bb cc    #顯示在aa,bb,cc檔案中包含test的行

  (3)grep '[a-z]\{5\}' aa   #顯示所有包含每行字串至少有5個連續小寫字元的字串的行

  (4)grep magic /usr/src  #顯示/usr/src目錄下的檔案(不含子目錄)包含magic的行

  (5)grep -r magic /usr/src  #顯示/usr/src目錄下的檔案(包含子目錄)包含magic的行

  (6)grep -w pattern files :

###  (6)grep -w pattern files :######  (6)grep -w pattern files :######  (6)grep -w pattern files :######  (6)grep -w pattern files : ######  (6)grep -w pattern files :只匹配整個單詞,而不是字符串的一部分(如匹配'magic',而不是'magical'),###

以上是Linux下find和grep區別和常用指令介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

無法以 root 身份登錄 mysql 無法以 root 身份登錄 mysql Apr 08, 2025 pm 04:54 PM

無法以 root 身份登錄 MySQL 的原因主要在於權限問題、配置文件錯誤、密碼不符、socket 文件問題或防火牆攔截。解決方法包括:檢查配置文件中 bind-address 參數是否正確配置。查看 root 用戶權限是否被修改或刪除,並進行重置。驗證密碼是否準確無誤,包括大小寫和特殊字符。檢查 socket 文件權限設置和路徑。檢查防火牆是否阻止了 MySQL 服務器的連接。

C語言條件編譯:新手入門到實戰應用的詳盡指南 C語言條件編譯:新手入門到實戰應用的詳盡指南 Apr 04, 2025 am 10:48 AM

C語言條件編譯是一種根據編譯時條件選擇性編譯代碼塊的機制,入門方法有:使用#if和#else指令根據條件選擇代碼塊。常用條件表達式包括STDC、_WIN32和linux。實戰案例:根據操作系統打印不同消息。根據系統位數使用不同的數據類型。根據編譯器支持不同的頭文件。條件編譯增強了代碼的可移植性和靈活性,使其適應編譯器、操作系統和CPU架構變化。

Linux的5個基本組件是什麼? Linux的5個基本組件是什麼? Apr 06, 2025 am 12:05 AM

Linux的五個基本組件是:1.內核,管理硬件資源;2.系統庫,提供函數和服務;3.Shell,用戶與系統交互的接口;4.文件系統,存儲和組織數據;5.應用程序,利用系統資源實現功能。

mysql 無法啟動怎麼解決 mysql 無法啟動怎麼解決 Apr 08, 2025 pm 02:21 PM

MySQL啟動失敗的原因有多種,可以通過檢查錯誤日誌進行診斷。常見原因包括端口衝突(檢查端口占用情況並修改配置)、權限問題(檢查服務運行用戶權限)、配置文件錯誤(檢查參數設置)、數據目錄損壞(恢復數據或重建表空間)、InnoDB表空間問題(檢查ibdata1文件)、插件加載失敗(檢查錯誤日誌)。解決問題時應根據錯誤日誌進行分析,找到問題的根源,並養成定期備份數據的習慣,以預防和解決問題。

mysql 可以在 android 上運行嗎 mysql 可以在 android 上運行嗎 Apr 08, 2025 pm 05:03 PM

MySQL無法直接在Android上運行,但可以通過以下方法間接實現:使用輕量級數據庫SQLite,由Android系統自帶,無需單獨服務器,資源佔用小,非常適合移動設備應用。遠程連接MySQL服務器,通過網絡連接到遠程服務器上的MySQL數據庫進行數據讀寫,但存在網絡依賴性強、安全性問題和服務器成本等缺點。

MySQL安裝在特定係統版本上報錯的解決途徑 MySQL安裝在特定係統版本上報錯的解決途徑 Apr 08, 2025 am 11:54 AM

MySQL安裝報錯的解決方法是:1.仔細檢查系統環境,確保滿足MySQL的依賴庫要求,不同操作系統和版本需求不同;2.認真閱讀報錯信息,根據提示(例如缺少庫文件或權限不足)採取對應措施,例如安裝依賴或使用sudo命令;3.必要時,可嘗試源碼安裝並仔細檢查編譯日誌,但這需要一定的Linux知識和經驗。最終解決問題的關鍵在於仔細檢查系統環境和報錯信息,並參考官方文檔。

mySQL下載完安裝不了 mySQL下載完安裝不了 Apr 08, 2025 am 11:24 AM

MySQL安裝失敗的原因主要有:1.權限問題,需以管理員身份運行或使用sudo命令;2.依賴項缺失,需安裝相關開發包;3.端口衝突,需關閉佔用3306端口的程序或修改配置文件;4.安裝包損壞,需重新下載並驗證完整性;5.環境變量配置錯誤,需根據操作系統正確配置環境變量。解決這些問題,仔細檢查每個步驟,就能順利安裝MySQL。

MySQL安裝時提示缺少依賴項如何解決 MySQL安裝時提示缺少依賴項如何解決 Apr 08, 2025 pm 12:00 PM

MySQL安裝失敗通常因缺少依賴項導致。解決方法:1.使用系統包管理器(如Linux的apt、yum或dnf,Windows的VisualC Redistributable)安裝缺失的依賴庫,例如sudoaptinstalllibmysqlclient-dev;2.仔細檢查錯誤信息,逐一解決複雜的依賴關係;3.確保包管理器源配置正確,能訪問網絡;4.對於Windows,下載安裝必要的運行庫。養成閱讀官方文檔和善用搜索引擎的習慣,能有效解決問題。

See all articles