成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何使用Grep命令查找多個字符串

系統 Linux
今天向大家介紹一個非常有用的技巧,那就是使用 grep 命令查找多個字符串。

[[340905]]

大家好,我是良許!

今天向大家介紹一個非常有用的技巧,那就是使用 grep 命令查找多個字符串。

簡單介紹一下,grep 命令可以理解為是一個功能強大的命令行工具,可以用它在一個或多個輸入文件中搜索與正則表達式相匹配的文本,然后再將每個匹配的文本用標準輸出的格式寫出來。

因此,良許向大家分享一下如何使用 grep 命令的多種搜索模式以及使用 grep 搜索多個字符串:

多模式 Grep 命令

grep 命令支持三種正則表達式語法:Basic、Extended 和 Perl-compatible 。當沒有指定正則表達式類型時,grep 命令將搜索模式默認為基本正則表達式。

要搜索多個匹配模式,可以使用 OR ( alternation ) 運算符。我們可以用 OR 運算符 |( pipe )指定不同的匹配項,這些匹配項可以是文本字符串,也可以是表達式集。值得注意的是,在所有正則表達式運算符中,這個運算符的優先級是最低的。

使用 grep 命令基本正則表達式搜索多個匹配模式的語法如下:

  1. $ grep 'pattern1\|pattern2' filename 

這里需要注意的是,始終要用單引號將正則表達式括起來,因為單引號內的內容原樣輸出,被單引號括起的內容不管是常量還是變量不會發生替換。

使用基本正則表達式時,元字符被解釋為字面字符。要保留元字符的特殊含義,必須用反斜杠( \ )對它們進行轉義。這就是為什么我們要轉義 OR 運算符(|)。

要將模式解釋為擴展正則表達式,請調用 grep -E(或 --extended-regexp )選項。使用擴展正則表達式時,不需要對 OR 運算符 (|) 進行轉義: 

  1. $ grep -E 'pattern1|pattern2' file 

Grep命令搜索多個字符串

通常我們認為,文字字符串是最基本的模式。

接下來我們將示例,搜索某用戶日志錯誤文件中出現的所有 fatal、error 和 critical 字符串。語法如下:

  1. $ grep 'fatal\|error\|critical' /var/log/nginx/error.log 

還需要注意的是,如果要搜索的字符串包含空格,需要用雙引號將其括起來。

下面是使用擴展正則表達式的同一個示例,它不需要轉義字符:

  1. $ grep -E 'fatal|error|critical' /var/log/nginx/error.log 

默認情況下,grep 命令是區分大小寫的。要在搜索時忽略大小寫,請調用 grep 加 -i (或 --ignore-case )選項,示例如下:

  1. $ grep -i 'fatal|error|critical' /var/log/nginx/error.log 

當你只想搜索某個單詞時,比如你想搜索的是單詞 error ,grep 命令會輸出所有包含 error 字符串的行,即它除了會輸出包含 error 單詞的行,還會輸出包含 errorless 或 antiterrorists 等非 error 單詞的行,這樣是極不方便的。

因此要僅返回指定字符串是整詞的行,或者是由非單詞字符括起來的行,可以使用 grep 加 -w (或 --word-regexp )選項:

  1. $ grep -w 'fatal|error|critical' /var/log/nginx/error.log 

值得注意的是,單詞字符包括有字母、數字字符(比如 a-z、a-Z 和 0-9 )以及下劃線( _ ),所有其他字符都被視為非單詞字符。

總結

在工作中,我們經常需要用到 grep 命令來搜索字符串,學會了使用 grep 搜索多個字符串這個技巧,一定有機會用上的。實際上,grep 命令遠不止本文所講的功能,如果你對 grep 命令的功能有任何疑問或者還想學習它的其他功能,請留言告訴我唄!

本文轉載自微信公眾號「良許Linux」,可以通過以下二維碼關注。轉載本文請聯系良許Linux公眾號。

 

責任編輯:武曉燕 來源: 良許Linux
相關推薦

2023-04-25 15:46:51

Python字符串

2020-09-18 14:23:50

字符

2022-11-24 08:01:57

bash腳本字符串

2019-12-16 09:26:05

Java設計操作系統

2022-11-21 12:06:24

fgrep命令Linux

2023-01-09 09:52:06

Bash字符串

2019-01-08 09:23:16

Java字符串編碼

2024-09-11 17:00:36

2011-09-01 21:41:42

SQL Server把字符分割成兩個字符串

2022-01-18 09:01:12

云計算

2009-11-16 17:59:13

PHP數組轉字符串

2019-09-23 15:40:42

sedLinux命令

2011-03-15 15:20:46

2011-05-25 09:58:46

C#

2021-03-26 08:36:35

JavaScript字符串開發

2023-09-14 15:05:33

grep正則表達式

2009-11-27 14:36:12

PHP運算符==

2010-09-26 13:51:48

SQL游標

2020-11-03 18:36:37

面試字符串算法

2024-03-27 10:21:47

字符串棧內存V8
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品一区二区三区视频在线观看 | 伊人久久综合 | 一区二区在线观看免费视频 | 99久久婷婷国产综合精品电影 | 国产精品久久久久久久久久免费看 | 亚洲久草视频 | 成人av播放| 美女131mm久久爽爽免费 | 日本a∨视频 | 欧美一区二区三区在线看 | 91中文字幕在线 | 一区视频在线免费观看 | 日本淫视频 | 日韩色综合 | 成人性视频免费网站 | 亚洲一区二区欧美 | 国产成人高清成人av片在线看 | 老牛影视av一区二区在线观看 | 日韩色在线 | 免费黄色片在线观看 | 欧美一区二区三区在线观看 | www.色综合| 欧美99| 成人福利网站 | 日韩2020狼一二三 | 日韩精品久久 | 狠狠色综合久久婷婷 | 精品国产乱码久久久久久闺蜜 | 久久伊人精品 | 亚洲国产情侣自拍 | 久久久av| 天天操天天射天天 | 91精品国产综合久久福利软件 | 免费a级毛片在线播放 | 手机av免费在线 | 热re99久久精品国产99热 | 欧美1区2区| 国产精品视频一二三区 | 中文字幕免费观看 | 九色视频网站 | 久久最新|