分享Linux Grep高階使用者指南
導讀 | 任何管理 伺服器一段時間的人都熟悉“grep” 。 藉助Linux的“Everything is a file”理念,grep對於遍歷日誌檔案,配置檔案,檢查輸出檔案中的某些錯誤以及獲取匹配數量至關重要。 在本教程中,我將向您展示grep的一些高階用法,它們仍然非常有用。 這些在手冊頁中不難找到,但它們只是grep預設功能的擴充套件。 |
通常,grep的用法是這樣的:
grep 'pattern' filename
其中'pattern'是任何給定的模式或匹配的正規表示式。 但是,假設您有一個錯誤日誌檔案並正在執行例行維護。 您希望檢查日誌檔案中是否存在跨越各種源的某些關鍵字。 通常,您必須為每個短語使用單獨的grep表示式。
但是,我們可以使用“-E”引數輕鬆使用正規表示式。 首先,我們有一個名為“linuxidc-com”的檔案,其中包含以下內容:
假設我們要在此檔案中搜尋以下兩個短語:
linuxidc
linuxmi
grep -Ew 'linuxidc|linuxmi' linuxidc-com
有兩個標誌:
1.-E表示我們正在使用擴充套件正規表示式
2.-w意味著我們只想匹配整個單詞
為了使它更容易,我們可以將“grep -E”替換為“egrep”。 所以上面的
變成:
egrep -w 'linuxidc|linuxmi' linuxidc-com
這裡是輸出:
我們可以根據需要匹配儘可能多的單詞。如果你想刪除“單詞”的要求,而只是想要一個直接的字串匹配,那麼你可以刪除“w”引數。
我們通常認為grep搜尋檔案或來自另一個命令的特定輸出。但是,我們也可以使用它同時搜尋整個檔案目錄。比如說,你有一堆分散在系統周圍的日誌檔案。畢竟,許多軟體包都有自己的日誌檔案位置。為了方便您,您可以建立一個新資料夾,其中包含指向您感興趣的所有各種日誌檔案的符號連結。現在,您可以使用“-R”命令與grep一起搜尋所有這些內容。首都“R”告訴grep包含符號連結。小“r”忽略預設情況下在命令列中找不到的符號連結。
例如,在以下示例中,我們在當前目錄中搜尋字串:
grep -r linuxidc .
末尾的點( .)表示當前目錄。 我們得到以下輸出:
您可以在下面看到,它還會以遞迴方式搜尋另一個模式匹配:
這對於同時搜尋一堆檔案非常有用。 輸出還會顯示包含匹配字串的檔案的名稱! 我個人喜歡這個帶有“-R”的解決方案,可以同時搜尋一組符號連結,以節省時間。
有時您想知道某個關鍵字出現在grep中的次數。 例如,如果您在網站檔案中搜尋某個蜘蛛,則需要計算包含特定使用者代理的行數。為此,我們只需新增“-c”引數即可。 請記住,這會刪除grep的常規輸出,並且不再顯示單個匹配項。 例如,沒有“-c”引數:
grep rr linuxidc-com
我們得到一個簡單的事件列表。 加入“-c”:
grep -c rr linuxidc-com
我們得到了行數:如您所見,它不再顯示每個事件。
Grep是一個非常強大的工具,它的功能多年來一直在增加。 我們可以建立複雜的正規表示式,甚至可以建立一個表示式來格式化檔案的輸出,使其更易於閱讀。 這些高階grep使用示例將讓您體驗可能的內容,並希望您自己深入研究手冊!
如果您喜歡高階grep命令的這篇文章,請透過社交媒體網路與您的朋友分享。 如果您對本教程有任何疑問,請在下面寫下評論。 謝謝!
原文來自:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2838008/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- VueSSR高階指南Vue
- React高階指南之高階元件React元件
- 高階管理員指南
- grep——高逼格 Linux文字搜尋神器Linux
- Linux高階命令Linux
- Linux grepLinux
- React 高階元件(HOC)入門指南React元件
- Spark效能優化指南:高階篇Spark優化
- 高階 Linux 命令精通指南1,2,3 - Linux常用監控命令Linux
- 高階 Linux 命令精通指南,第一部分Linux
- Linux grep 命令Linux
- linux-grepLinux
- 【Linux】grep命令Linux
- RabbitMQ高階指南:從配置、使用到高可用叢集搭MQ
- RabbitMQ高階指南:從配置、使用到高可用叢集搭建MQ
- 【Linux進階】使用grep、find、sed以及awk進行文字操作Linux
- Linux下VsFTP和ProFTP使用者管理高階技巧之一LinuxFTP
- 高階bash/shell指令碼程式設計指南指令碼程式設計
- WebGL程式設計指南(8)高階技術Web程式設計
- linux命令之grepLinux
- 【Linux命令】grep命令Linux
- Linux - find與grepLinux
- Jenkins 使用指南 之 高階應用篇Jenkins
- 現代配置指南——YAML 比 JSON 高階在哪?YAMLJSON
- Linux下more命令高階用法Linux
- Linux下mv命令高階用法Linux
- LINUX find的高階查詢Linux
- Linux高階命令——cut命令用法Linux
- 流高階佇列使用者手冊佇列
- 分享Python的5種高階特徵應用Python特徵
- Linux命令篇 - grep 命令Linux
- linux中grep基本用法Linux
- Linux基礎命令---grepLinux
- Linux grep命令的使用Linux
- linux grep命令詳解Linux
- linux命令: ps,grep,killLinux
- Linux命令grep詳解Linux
- 中文Linux桌面使用者指南(轉)Linux