0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

關(guān)于Linux三劍客之grep實戰(zhàn)示例詳細(xì)教程講解

Linux愛好者 ? 來源:開源博客 ? 作者: Linux云計算網(wǎng)絡(luò) ? 2021-03-31 16:43 ? 次閱讀

Linux 最重要的三個命令在業(yè)界被稱為三劍客,它們是:awk、sed、grep。sed 已經(jīng)在上篇中講過,本文要講的是 grep 命令。

我們在使用 Linux 系統(tǒng)中,grep 命令的使用尤為頻繁,熟練掌握 grep 的常見用法,能夠極大地提高你的工作效率。

grep 命令是一種強大的文本搜索工具,它能使用正則表達(dá)式,按照指定的模式去匹配,并把匹配的行打印出來。需要注意的是,grep 只支持匹配而不能替換匹配的內(nèi)容,替換的功能可以由 sed 來完成。

整體上 grep 還是比較簡單的,文中不會詳細(xì)列舉所有的選項和參數(shù),會以多個具體示例來說明 grep 的使用方法和場景,幫助你快速學(xué)會 grep 的常見用法。

示例實戰(zhàn)廢話不說了,直接實戰(zhàn)。文章中的示例 需要一個樣例文件,文件內(nèi)容如下:

257b03fc-8d80-11eb-8b86-12bb97331649.png

1. 把包含 syslog 的行過濾出來

25bc8ade-8d80-11eb-8b86-12bb97331649.png

2. 把以 ntp 開頭的行過濾出來

25e68668-8d80-11eb-8b86-12bb97331649.png

3. 把匹配 ntp 的行以及下邊的兩行過濾出來

260695ca-8d80-11eb-8b86-12bb97331649.png

4. 把包含 syslog 及上邊的一行過濾出來

2629a786-8d80-11eb-8b86-12bb97331649.png

5. 把包含 syslog 以及上、下一行內(nèi)容過濾出來

264c2f2c-8d80-11eb-8b86-12bb97331649.png

6. 過濾某個關(guān)鍵詞,并輸出行號

267784b0-8d80-11eb-8b86-12bb97331649.png

7. 過濾不包含某關(guān)鍵詞,并輸出行號

269d57f8-8d80-11eb-8b86-12bb97331649.png

8. 刪除掉空行

26d72154-8d80-11eb-8b86-12bb97331649.png

9. 過濾包含 root 或 syslog 的行

26f628f6-8d80-11eb-8b86-12bb97331649.png

10. 查看當(dāng)前目錄中包含某關(guān)鍵詞的所有文件(這個很有用)

27195b14-8d80-11eb-8b86-12bb97331649.png

簡單總結(jié)通過了一些簡單案例操作,我們應(yīng)該已經(jīng)熟悉了 grep 的常見用法,下邊再來簡單總結(jié) grep 的常見選項,相信在實戰(zhàn)練習(xí)后再來總結(jié)應(yīng)該會有更好的學(xué)習(xí)效果。

-A:除了匹配行,額外顯示該行之后的N行

-B:除了匹配行,額外顯示該行之前的N行

-C:除了匹配行,額外顯示該行前后的N行

-c:統(tǒng)計匹配的行數(shù)

-e:實現(xiàn)多個選項間的邏輯 or 關(guān)系

-E:支持?jǐn)U展的正則表達(dá)式

-F:相當(dāng)于 fgrep

-i:忽略大小寫

-n:顯示匹配的行號

-o:僅顯示匹配到的字符串

-q:安靜模式,不輸出任何信息,腳本中常用

-s:不顯示錯誤信息

-v:顯示不被匹配到的行

-w:顯示整個單詞

--color:以顏色突出顯示匹配到的字符串

與 grep 相似的工具還有 egrep、fgrep,實用性并不強,其功能完全可以通過 grep 的擴展參數(shù)來實現(xiàn),所以就不再擴展。
編輯:lyn

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11123

    瀏覽量

    207919
  • grep
    +關(guān)注

    關(guān)注

    0

    文章

    22

    瀏覽量

    4700

原文標(biāo)題:Linux 三劍客之 grep 實戰(zhàn)詳解教程

文章出處:【微信號:LinuxHub,微信公眾號:Linux愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    《七下天山》“七利刃”:“新一代”漏洞掃描管理系統(tǒng)

    。該平臺七個方面功能尤其強大,堪稱梁羽生的武俠小說《七下天山》“七利刃”: ?日月?:多租戶管理。不同租戶間能設(shè)置符合各租戶自身特點的漏洞掃描策略,并只能查看當(dāng)前租戶的漏洞分別
    的頭像 發(fā)表于 09-09 11:23 ?241次閱讀

    慧能泰推出HP1500+HP3500+HUSB338E 20W快充方案

    好家伙,咱爺研制的這2200W交流電直充可不興用啊。充電器首要是安全,然后才是速度。比如慧能泰新推出的這款HP1500+HP3500+HUSB338E 20W快充方案,AC-DC和協(xié)議芯片均來自慧能泰最新研發(fā)的產(chǎn)品,三劍客組合出擊,打造高性價比的20W快充高效方案。
    的頭像 發(fā)表于 07-08 15:20 ?1474次閱讀
    慧能泰推出HP1500+HP3500+HUSB338E 20W快充方案

    頻譜儀測量功能占用帶寬、時域功率、諧波分析講解

    頻譜儀測量功能占用帶寬、時域功率、諧波分析講解
    的頭像 發(fā)表于 06-26 14:34 ?824次閱讀
    頻譜儀測量功能<b class='flag-5'>之</b>占用帶寬、時域功率、諧波分析<b class='flag-5'>講解</b>

    PLC工程示例步進(jìn)電機啟停

    電子發(fā)燒友網(wǎng)站提供《PLC工程示例步進(jìn)電機啟停.rar》資料免費下載
    發(fā)表于 06-11 09:09 ?8次下載

    Linux平臺移植音頻芯片實戰(zhàn)記錄

    本文詳細(xì)記錄在NXP I.MX6ULL+Linux平臺下進(jìn)行WM8960音頻芯片移植的過程,其他平臺操作方法類似,希望為大家提供幫助。
    的頭像 發(fā)表于 05-17 14:28 ?892次閱讀
    <b class='flag-5'>Linux</b>平臺移植音頻芯片<b class='flag-5'>實戰(zhàn)</b>記錄

    LM61089A/B/Q三劍客為SLIC接口電路提供保護(hù)

    電信通信設(shè)備需要通過CR-1089-CORE 認(rèn)證,GR-1089-CORE 是NEBS 認(rèn)證中關(guān)于網(wǎng)絡(luò)設(shè)備電磁兼容性和電氣安全的標(biāo)準(zhǔn),它是評定通信設(shè)備在遭受到高能量脈沖干擾時的抗干擾能力的通用標(biāo)準(zhǔn)
    的頭像 發(fā)表于 04-20 11:37 ?247次閱讀
    LM61089A/B/Q<b class='flag-5'>三劍客</b>為SLIC接口電路提供保護(hù)

    上海雷卯LM61089A/B/Q三劍客為SLIC接口電路提供保護(hù)

    講解電信通信設(shè)備需要通過CR-1089-CORE認(rèn)證,GR-1089-CORE是NEBS認(rèn)證中關(guān)于網(wǎng)絡(luò)設(shè)備電磁兼容性和電氣安全的標(biāo)準(zhǔn),它是評定通信設(shè)備在遭受到高能量脈沖干擾時的抗干擾能力的通用標(biāo)準(zhǔn)。許多客戶通信設(shè)備對于GR-1089-COR
    的頭像 發(fā)表于 04-19 08:02 ?258次閱讀
    上海雷卯LM61089A/B/Q<b class='flag-5'>三劍客</b>為SLIC接口電路提供保護(hù)

    關(guān)于STM32 DMAMUX模塊具體的應(yīng)用示例代碼

    有人通過公眾號微信留言,詢問是否有關(guān)于STM32 DMAMUX模塊具體的應(yīng)用示例代碼。同時,個人也發(fā)現(xiàn),雖然STM32片內(nèi)的DMAMUX不是什么新模塊,似乎還是很多人并不太熟悉。這里借機聊聊這方面的內(nèi)容,重點演示相關(guān)功能的實現(xiàn),以供參考。
    的頭像 發(fā)表于 03-25 09:15 ?2016次閱讀
    <b class='flag-5'>關(guān)于</b>STM32 DMAMUX模塊具體的應(yīng)用<b class='flag-5'>示例</b>代碼

    詳細(xì)講解Altium Designer 23的安裝教程

    在PCB設(shè)計中,軟件的安裝是我們邁出的第一步,接下來將詳細(xì)講解Altium Designer 23安裝教程。
    的頭像 發(fā)表于 01-09 10:02 ?6460次閱讀
    <b class='flag-5'>詳細(xì)</b><b class='flag-5'>講解</b>Altium Designer 23的安裝教程

    linux查看weblogic進(jìn)程

    和性能情況。本文將詳細(xì)介紹在Linux系統(tǒng)中如何查看WebLogic進(jìn)程。 一、使用ps命令查看WebLogic進(jìn)程 打開終端,使用以下命令查看所有WebLogic進(jìn)程及其詳細(xì)信息: ps -ef
    的頭像 發(fā)表于 12-05 16:07 ?1505次閱讀

    linux搜索文件里的字符串

    Linux系統(tǒng)中,我們可以使用各種方法來搜索文件中的字符串。在本文中,我將為您詳細(xì)介紹幾種常用的方法和工具。讓我們開始吧! grep命令 grep命令是
    的頭像 發(fā)表于 11-23 10:20 ?1308次閱讀

    自己編寫函數(shù)示例代碼很難嗎?分享幾個示例!

    Q A 問: Arduino Uno的函數(shù)示例 我決定自己編寫函數(shù)示例代碼,因為這應(yīng)該是Arduino中的基本示例。網(wǎng)絡(luò)上確實有關(guān)于使用函數(shù)的文檔,但是,如果要嘗試使用代碼環(huán)境,則必須
    的頭像 發(fā)表于 11-16 16:05 ?407次閱讀
    自己編寫函數(shù)<b class='flag-5'>示例</b>代碼很難嗎?分享幾個<b class='flag-5'>示例</b>!

    linux命令行與shell編程實戰(zhàn)

    Linux命令行與Shell編程實戰(zhàn)主要涉及以下內(nèi)容: Linux命令行基礎(chǔ):學(xué)習(xí)Linux命令行的基本操作,如文件管理、進(jìn)程管理、網(wǎng)絡(luò)配置等。熟悉使用命令行能夠提高工作效率,提升自己
    的頭像 發(fā)表于 11-08 10:57 ?623次閱讀

    LOAM源代碼中坐標(biāo)變換部分的詳細(xì)講解

    本系列文章將對LOAM源代碼進(jìn)行講解,在講解過程中,涉及到論文中提到的部分,會結(jié)合論文以及我自己的理解進(jìn)行解讀,尤其是對于其中坐標(biāo)變換的部分,將會進(jìn)行詳細(xì)講解
    的頭像 發(fā)表于 11-01 10:49 ?1537次閱讀
    LOAM源代碼中坐標(biāo)變換部分的<b class='flag-5'>詳細(xì)</b><b class='flag-5'>講解</b>

    讀《玄鐵RISC-V處理器入門與實戰(zhàn)

    ,兼容64位高能效處理器C908,高性能應(yīng)用處理器C910,以及AI加速引擎C920。 ③、面向高性能領(lǐng)域CPU,著重介紹了高性能應(yīng)用處理器C910與可靠實時增強型R910。 書籍有關(guān)于平臺的介紹
    發(fā)表于 09-28 11:58