跳转至内容
上海创厦网络科技
IT服务专家
上海创厦网络科技上海创厦网络科技
  • 首页
  • 网站建设
  • IT服务
  • 平面设计
  • 网络工程
  • 首页
  • 网站建设
  • IT服务
  • 平面设计
  • 网络工程

多个字符串和模式使用grep

您在这里:
  1. 首页
  2. Linux技巧
  3. 多个字符串…
5月262022
Linux技巧


导读 grep是一个功能强大的命令行工具,可让您在一个或多个输入文件中搜索与正则表达式匹配的行,并将每个匹配的行写入标准输出。

在本文中,我们将向您展示如何使用GNU grep搜索多个字符串或模式。

Grep多种模式

GNU grep支持三种正则表达式语法,Basic,Extended和Perl兼容。 如果未指定任何正则表达式类型,则grep会将搜索模式解释为基本正则表达式。

要搜索多个模式,请使用OR(交替)运算符。

交替运算符 |(竖线)允许您指定不同的可能匹配项,这些匹配项可以是文字字符串或表达式集。 在所有正则表达式运算符中,此运算符的优先级最低。

使用grep基本正则表达式搜索多个模式的语法如下:

grep ‘pattern1|pattern2’ file…

实例:

[linuxidc@linux:~/www.linuxidc.com]$ grep ‘MainWindow|QComboBox’ linuxidc.py

使用基本正则表达式时,元字符将解释为文字字符。 为了保留元字符的特殊含义,必须使用反斜杠()对其进行转义。 这就是为什么我们用斜杠转义OR运算符(|)的原因。

要将模式解释为扩展的正则表达式,请调用grep -E(或–extended-regexp)选项。 使用扩展的正则表达式时,不要转义|运算符:

$grep -E ‘pattern1|pattern2’ file…

[linuxidc@linux:~/www.linuxidc.com]$ grep -E ‘MainWindow|QComboBox’ linuxidc.py

Grep多个字符串

文字字符串是最基本的模式。

在以下示例中,我们正在Nginx日志错误文件中搜索所有出现致命,错误和严重的单词:

$grep ‘fatal|error|critical’ /var/log/nginx/error.log

如果要搜索的字符串包含空格,请用双引号将其引起来。

这是使用扩展正则表达式的相同示例,它消除了对运算符|进行转义的需要。

$grep -E ‘fatal|error|critical’ /var/log/nginx/error.log

默认情况下,grep区分大小写。 这意味着将大写和小写字符视为不同的字符。

要在搜索时忽略大小写,请使用-i选项调用grep(或 –ignore-case):

$grep -i ‘fatal|error|critical’ /var/log/nginx/error.log

搜索字符串时,grep将显示该字符串嵌入较大字符串中的所有行。 因此,如果您要搜索“错误”,则grep还将在较大的单词(例如“ errorless”或“ antiterrorists”)中嵌入“ error”的行。

要仅返回指定字符串是整个单词(用非单词字符括起来)的那些行,请使用-w(或–word-regexp)选项:

$grep -w ‘fatal|error|critical’ /var/log/nginx/error.log

文字字符包括字母数字字符(a-z,A-Z和0-9)和下划线(_)。 所有其他字符均视为非单词字符。

总结

我们已经向您展示了如何grep搜索多个模式,字符串和单词。

如果您有任何问题或反馈,请随时发表评论。

原文来自:https://www.linuxidc.com/Linux/2020-05/163190.htm

本文地址:https://www.linuxprobe.com/string-pattern-grep.html
编辑:清蒸github,审核员:逄增宝

Linux命令大全:https://www.linuxcool.com/

Linux系统大全:https://www.linuxdown.com/

红帽认证RHCE考试心得:https://www.rhce.net/

为您推荐一些与本文相关的文章:
当你敲下命令的瞬间,发生了什么?
云中最完美的组合:容器和DevOps
Linux中没有rc.local文件的解决方法
谨防云中断,数据中心冗余应该如何设计
企业上云哪种形式的云更适合?
数据中心机房消防系统概要
披露:SolarWinds黑客窃取了美国政府的绝密数据
到彻底改造GNU动态链接器的时候了吗?
《玩转树莓派Raspberry Pi 》pdf电子书免费下载
《Oracle PL SQL从入门到精通》pdf电子书免费下载

Category: Linux技巧startupplaza2022年5月26日评论

作者: startupplaza

文章导航

历史的文章历史的文章:带你进入Vue2响应式系统之嵌套之旅未来的文章未来的文章:Spring ConfigurationCondition接口详解

Related Posts

简单介绍vscode调试container中的程序的方法步骤
2022年5月26日
单点登录之cas集成sonar的配置方法详解
2022年5月26日
简单介绍Rust中的workspace
2022年5月26日
Centos8 使用realmd加入AD域
2022年5月26日
简单探讨Golang中defer预计算参数
2022年5月26日
简单介绍Python格式化字符串的案例方法
2022年5月26日

技术探讨

  • 使用HTML5捕捉音频与视频信息概述及实例
  • HTML5 Canvas实现玫瑰曲线和心形图案的代码实例
  • 详解HTML5中的