导读

grep是一个强大的命令行工具,它允许在一个或多个文件中搜索与正则表达式匹配的行,并将匹配的结果写入标准输出。

Grep的多条件搜索模式

grep支持三种正则表达式语法:Basic、Extended和Perl正则表达式。当没有指定正则表达式类型时,grep将搜索模式解释为Basic基本正则表达式。

使用多条件搜索模式时,请使用|管道符。使用grep的基本正则表达式搜索多个条件,语法如下:

]# grep 'pattern1\|pattern2' file

当使用基本正则表达式时,需要使用\转义符为|管道符转义。

如果使用扩展模式,可以添加-E参数。使用扩展模式,就不需要为|管道符添加转义符了。也可以使用egrep命令,这个命令和grep -E用法一样。

]# grep 'pattern1|pattern2' file

]# egrep 'pattern1|pattern2' file

使用实例

检查操作系统是否开启虚拟化功能,使用Basic基本模式:

[root@localhost ~]# grep 'vmx\|svm' /proc/cpuinfo

flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch ssbd ibrs ibpb stibp tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 invpcid rtm mpx rdseed adx smap clflushopt xsaveopt xsavec arat spec_ctrl intel_stibp flush_l1d arch_capabilities

使用扩展模式就不需要添加\转义符了,扩展模式使用方式:

[root@localhost ~]# grep -E 'vmx|svm' /proc/cpuinfo

flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch ssbd ibrs ibpb stibp tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 invpcid rtm mpx rdseed adx smap clflushopt xsaveopt xsavec arat spec_ctrl intel_stibp flush_l1d arch_capabilities

# 或者

[root@localhost ~]# egrep 'vmx|svm' /proc/cpuinfo

flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch ssbd ibrs ibpb stibp tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 invpcid rtm mpx rdseed adx smap clflushopt xsaveopt xsavec arat spec_ctrl intel_stibp flush_l1d arch_capabilities

默认情况grep区分大小写,如果需要忽略大小写,可以添加-i参数:

[root@localhost ~]# grep -E -i 'VMX|SVM' /proc/cpuinfo

flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch ssbd ibrs ibpb stibp tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 invpcid rtm mpx rdseed adx smap clflushopt xsaveopt xsavec arat spec_ctrl intel_stibp flush_l1d arch_capabilities

# 或者

[root@localhost ~]# egrep -i 'VMX|SVM' /proc/cpuinfo

flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch ssbd ibrs ibpb stibp tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 invpcid rtm mpx rdseed adx smap clflushopt xsaveopt xsavec arat spec_ctrl intel_stibp flush_l1d arch_capabilities

总结

grep是一个强大的命令行工具,它允许在一个或多个文件中搜索与正则表达式匹配的行,并将匹配的结果写入标准输出。

linux搜索含多个字符串,使用grep搜索多个字符串相关推荐

  1. linux 文件中搜索字符串命令 grep

    用'grep'搜索文本文件  如果您要在几个文本文件中查找一字符串,可以使用'grep'命令.'grep'在文本中搜索指定的字符串. 假设您正在'/usr/src/linux/Documentatio ...

  2. linux命令grep如何使用,Linux下如何使用grep搜索文本

    Linux下如何使用grep搜索文本 2018-11-30 一.什么是grep grep是一种文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来. grep是几个单词的缩写,g(globa ...

  3. 【转】grep搜索子目录中包含某字符串的特定文件

    比如,我想搜源码目录src下,包含"niuc"的所有ec文件 find ./src -name '*.ec' -exec grep -i niuc {} /; -print 在特定 ...

  4. grep 两个字符串_文本搜索神器Grep

    假设有一个文件(或一堆文件),并且想要在这些文件中搜索特定的字符串或配置关键字.Windows下,你可能会打开这些文件用搜索框(CTRL+F)输入关键字点搜索,这很麻烦而且还不能随心所欲的搜.在Lin ...

  5. grep搜索子目录中包含某字符串的特定文件

    grep -n "str" -r ./ 这是查找当前目录下以及下辖子目录下所有包含str字符串的文件,会列出文件名.以及该行的内容.以及行号  ------------------ ...

  6. linux忽略大小写 grep,linux grep不区分大小写查找字符串方法

    grep用来过滤字符串信息,grep默认对字母大小写敏感,不过可以通过选项对grep屏蔽大小写敏感,该选项为 -i. 一.查看grep工具版本方法 图1 grep版本查询 二.grep -i 使用方法 ...

  7. Linux Shell重定向 管道命令 grep搜索 awk编程 sed文件操作高阶函数

    在编程中如果能够熟悉shell高阶语法,将对我们进阶为高级程序员有很大的帮助,本文将从Shell重定向 管道命令 awk编程 sed等方面展开介绍. 作者:有勇气的牛排 文章目录 1 shell重定向 ...

  8. linux命令grep搜索倒序输出,Linux下的grep搜索命令详解(一)

    Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全局正则表达 ...

  9. linux 搜索文件内容 包含某个单词,grep命令 查找包含某内容的文件

    作用 Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全局正 ...

最新文章

  1. 【 FPGA 】时序分析中的基本概念和术语
  2. CentOS 7.3 源码安装 OpenVAS 9
  3. python写入csv文件中文乱码解决方案
  4. 面试pythonweb开发的简历_【经验分享】对于Python各个方向的面试经验分享,非常给力!...
  5. android弹幕开发,android弹幕框架
  6. 2019贵州大学计算机研究生,贵州大学2019年硕士研究生招生拟录取名单公示(一)...
  7. C语言课后习题(45)
  8. Getmemory函数详解--内存操作的理解
  9. azure 导入 bak_使用Azure Data StudioSQL Server数据导入
  10. 找不到服务器的打印机,在服务器上找不到打印机无法连接怎么解决
  11. 再谈王垠/王垠—写给清华大学的退学申请
  12. 『 云原生·Docker』Docker镜像分层与Docker镜像操作(二)
  13. 办公室计算机联机,两台电脑怎样联机?
  14. 华为是一家怎样的企业?
  15. 十年前的AlexNet,今天的NeurIPS 2022时间检验奖
  16. win7无法通过网页登录ftp服务器,win7不能登录ftp服务器配置
  17. CSDN-markdown编辑器帮助文档
  18. 【托业】toeic托业必背核心词汇_修正版
  19. Simpsons’ Hidden Talents(扩展KMP)
  20. An end-to-end heterogeneous graph representation learning-based framework for drug–target interactio

热门文章

  1. Redis _面试经典
  2. git pull 卡在 Unpacking objects 解决方法
  3. MyBatis3 用log4j在控制台输出 SQL----亲测,真实可用
  4. C++ unordered_map 使用详解(含C++20新特性)
  5. 01.elasticsearch请求使用的基本语法
  6. 蓝桥练习-算法训练 P0505
  7. 【已解决】surefire-reports for the individual test results.
  8. 极简代码:害死人不偿命的(3n+1)猜想 (15分)
  9. linux-RPM与YUM
  10. c++ vector拷贝构造_vector------stl学习笔记一