grep命令简单介绍

Linux常用命令——grep命令和通配符以及 grep命令:是一个shell命令,是shell中文本三剑客之一,作用是在文件中提取和匹配符合条件的字符串行。grep命令是一个非常常见的命令,和find命令有很多非常相似的地方,所以在这里先说明。命令格式如下:[root@localhost ~ ] # grep [选项] “搜索内容” 文件名选项:-i:忽略大小写-n:输出行号(显示原始文件中的行号)-v:反向查找--color=auto:搜索出的关键字用颜色显示# 输出行号。... 阅读详情
AI摘要

本文详细介绍了grep命令的各种用法,包括如何使用不同的参数来过滤文本文件中的行,例如显示行号、忽略大小写、打印特定数量的上下文行等。通过实际示例展示了grep的强大功能。

grep介绍

  • 正则就是一串有规律的字符串
  • 掌握好正则对于编写shell脚本有很大帮助
  • 各种编程语言中都有正则,原理是一样的
  • 本章将要学习grep/egrep、sed、awk

grep/egrep命令

  • grep命令:过滤出指定关键字的行;
  • 格式:grep [参数] ‘字符’ filename

  • grep -n 显示符号要求的行,并显示行号
  • grep -c 打印符合要求的行数
  • grep -v 打印不符合要求的行,取反的意思
  • grep -r 会把目录下的所有文件全部遍历;-r针对的是目录,如果不加-r只能针对文件
  • grep -i 忽略大小写
  • grep -A2 打印符合要求的行以及下面两行
  • grep -B2 打印符合要求的行以及上面两行
  • grep -C2 打印符合要求的行以及上下两行
  • grep -w 匹配一个完整的单词
  • grep -E 特殊符号脱意==egrep
  • centos7中自带 --color显示颜色 ;
  • grep 跟特殊符号的话,要用单引号
  • grep --include 包含
  • grep -l 只打印出含有匹配字符串的文件名,不输出具体匹配行的数据

  1. 过滤出包含root字符的行。
[root@localhost ~]# grep 'root' test.txt
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
  1. grep –n 过滤出包含root的行,并显示行号;
[root@localhost ~]# grep -n 'root' test.txt
1:root:x:0:0:root:/root:/bin/bash
10:operator:x:11:0:operator:/root:/sbin/nologin
  1. test.txt中包含root字符的一共有几行。
[root@localhost ~]# grep -c 'root' test.txt
2
  1. 过滤出不包含nologin的行;
[root@localhost ~]# grep -v 'nologin' test.txt
root:x:0:0:root:/root:/bin/bash
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
wuzhou:x:1000:1000::/home/wuzhou:/bin/bash
user3:x:1004:1003::/home/user3:/sbin/nolongin
user4:x:1005:1003::/home/user4:/sbin/nolongin
user5:x:1007:1006::/home/user5:/bin/login
user7:x:1009:1009::/home/user7:/bin/bash
  1. grep –i 不区分大小写
[root@localhost ~]# grep  -i 'biin' test.txt
root:x:0:0:root:/root:/biin/bash
Biin:x:1:1:bin:/bin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sBiin/nologin
sync:x:5:0:sync:/sbin:/Biin/sync
shutdown:x:6:0:shutdown:/sbiin:/sbin/shutdown
[root@localhost ~]# grep   'biin' test.txt
root:x:0:0:root:/root:/biin/bash
shutdown:x:6:0:shutdown:/sbiin:/sbin/shutdown
  1. grep –A2 打印符合要求的行以及下面两行;
[root@localhost ~]# grep -nA2 'root' test.txt
1:root:x:0:0:root:/root:/biin/bash
2-Biin:x:1:1:bin:/bin:/sbin/nologin
3-daemon:x:2:2:daemon:/sbin:/sbin/nologin
--
10:operator:x:11:0:operator:/root:/sbin/nologin
11-games:x:12:100:games:/usr/games:/sbin/nologin
12-ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
  1. grep –B2 打印符合要求的行以及上面两行;
[root@localhost ~]# grep -nB2 'spool' test.txt
3-daemon:x:2:2:daemon:/sbin:/sbin/nologin
4-adm:x:3:4:adm:/var/adm:/sBiin/nologin
5:lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
--
7-shutdown:x:6:0:shutdown:/sbiin:/sbin/shutdown
8-halt:x:7:0:halt:/sbin:/sbin/halt
9:mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
--
17-polkitd:x:998:996:User for polkitd:/:/sbin/nologin
18-tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
19:postfix:x:89:89::/var/spool/postfix:/sbin/nologin
  1. grep –C2 打印符合要求的行以及这行上下各两行;
[root@localhost ~]# grep -nC2 'halt' test.txt
6-sync:x:5:0:sync:/sbin:/Biin/sync
7-shutdown:x:6:0:shutdown:/sbiin:/sbin/shutdown
8:halt:x:7:0:halt:/sbin:/sbin/halt
9-mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
10-operator:x:11:0:operator:/root:/sbin/nologin

grep/egrep示例1:

  • grep -n 'root' test.txt
  • grep -nv 'nologin' test.txt
  • grep '[0-9]'/etc/inittab
  • grep -v '[0-9]'/etc/inittab
  • grep -v '^#' /etc/inittab
  • grep -v '^#' /etc/inittab|grep -v '^$'
  • grep '^[^a-zA-Z]' test.txt

  • [0-9]:这里的方括号,表示方括号里面的任意一个字符;只要有一个数字,不管是几,就算符合要求。
  1. 过滤出包含数字的行 ; grep '[0-9]' test1.txt
[root@localhost ~]# grep '[0-9]' test1.txt
root:x:0:0:root:/root:/biin/bash
123123
Biin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sBiin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
aaaa1111bbbb
11111111
sync:x:5:0:sync:/sbin:/Biin/sync
shutdown:x:6:0:shutdown:/sbiin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
  1. 过滤出所有不包含数字的行; grep -nv 'nologin' test.txt
[root@localhost ~]# grep -nv '[0-9]' test1.txt
8:BBBBBBB
11:asgfhavkhasd
  1. 过滤出不以#开头的行,方便查看某个文件的配置
[root@localhost ~]# grep -nv '^#' 2.txt
10:dbadfasdfervadsv
13:123`123dv
15:123123123
16:
  1. 过滤出不以#或者开头的行不包括空行
[root@localhost ~]# grep -v '^#' 2.txt |grep -v '^$'
dbadfasdfervadsv
123`123dv
123123123
  1. 过滤出不以字母开头的行
grep '^[^a-zA-Z]' test.txt 
[root@localhost ~]# grep '^[^a-zA-Z]' test.txt
11111111111
!@@@@$$$$$$
111111a22222222
  1. 过滤出不包含特殊符号的行
grep -v '^[^a-zA-Z0-9]' 2.txt 
[root@localhost ~]# grep -v '^[^a-zA-Z0-9]' 2.txt
dbadfasdfervadsv
123`123dv
123123123

grep/egrep示例2:

  • grep 'r.o' test.txt
  • grep 'oo*' test.txt
  • grep '.*' test.txt
  • grep 'o{2}' /etc/passwd
  • egrep 'o{2}' /etc/passwd
  • egrep 'o+' /etc/passwd
  • egrep 'oo?' /etc/passwd
  • egrep 'root|nologin' /etc/passwd
  • egrep '(oo){2}' /etc/passwd

正则里面的特殊符号

  • 1 . 表示 任意一个字符
  • 2 * 表示 零个或多个前面的字符
  • 3 .* 表示零个或多个任意字符,空行也包含在内;以r开头o结尾。
  • 4 ? 表示0个或者1个前面的字符,使用的时候要\ 脱意一下
  • 5 + 表示一个或者多个+前面的字符
  • 6 | 在正则表达式里面表示或者,可以写多个,是特殊符号,要使用脱意 或者-E 或者 egrep
  • 7 () 括号表示一个整体,{1,3}大括号表示一个范围 ? +(){} |都是特殊符号,要使用必须脱意或者-E 或者egrep
GREP命令常见用法 常用参数: -a #不要忽略二进制数据 -A #除了显示符合范本样式的那一行之外,并显示该行之后的内容 -b #在显示符合范本样式的那一行之外,并显示该行之前的内容 -B #除了显示符合样式的那一行之外,并显示该行之前的内容 -c #计算符合范本样式的列数 -C #除了显示符合范本样式的那一列之外,并显示该列之前后的内容 -d #当指定要查找的是目录而非文件时,必须使用这项参数,否则grep命令将回报信息并停止动作 -e #指定字符串作为查找文件内容的范本样式 -E #将范本样式为延伸的普 阅读详情

相关推荐

Linux运维实战:grep命令高级用法详解

Linux运维实战:grep命令高级用法详解

leibaiqing的专栏 1636

Linux命令详解之 grep

linux 命令详解 ## 命令名称: grep(global search regular express and print out line)打印匹配的行(内容) 类似的命令包括egrep、fgrep、rgrep ## 命令用法: grep [选项] 匹配项[PATTERN...] []表示可选参数 grep [选项[ [-e 匹配项]... [-f PATTERN]... [FILE...] PATTERN为正则表达式 ## 命令概述:

Super辉sir的博客 3万+

利用Pandas进行高效网络数据获取

本文将重点介绍如何使用Pandas库进行网络爬虫。爬取数据是获取互联网上信息的常见方式之一,而Pandas作为一种强大的数据处理和分析工具,为我们提供了便捷的方法来处理和清洗从网页上获取的数据。文章将从爬取网页数据开始,包括使用Python的Requests库发送HTTP请求获取网页内容,并使用Pandas的功能来解析和提取所需的数据。我们还将讨论如何处理网页中的表格数据、处理和清洗数据、保存数据到文件等常见任务。

ak_bingbing的博客 1439

grep -i v A B C w c o 等

grep命令常用参数说明:-A(After)、-B(Before)、-C(Context)分别显示匹配行后/前/前后指定行数。-a搜索二进制文件,-c统计匹配行数,-v反向匹配,-i忽略大小写。-w全词匹配,-o仅输出匹配部分。组合使用如grep -ciw统计全词匹配行数(忽略大小写),grep -oiw|wc -l统计全词匹配总次数。管道符配合-v可过滤内容。示例:grep -A1显示匹配行及后1行,grep -v排除匹配内容。

sinat_42724379的博客 3万+

LAMMPS实操系列(四): 高熵合金FCC-CoCrCuFeNi的退火模拟

我们对FCC-CoCrCuFeNi的退火模拟思路主要是,首先将材料以均匀的速率用100 ps从300 K升温至1000 K,然后在1000 K的温度下平衡100 ps,随后以均匀的速率用100 ps从1000 K降温至300 K,随后通过共轭梯度下降法做静力学结构优化得到退火后的结构。由于FCC-CoCrCuFeNi高熵合金被认为是潜在的工程结构材料[1],接下来我们将对退火前后的结构进行压缩模拟,对比退火前后FCC-CoCrCuFeNi高熵合金的力学性能变化,敬请各位读者关注我们的更新。

Ceshigo_CD的博客 4837

桑基图实战指南:Excel/Python/R三工具高效绘制方法

桑基图是一种以线条宽度编码流量大小、以节点位置表达流程阶段、以连接关系呈现数据流向的专项可视化技术,其核心原理在于‘宽即量、位即序、连即逻辑’。它并非装饰性图表,而是面向业务诊断的分析前置工具,尤其适用于预算分配、能源损耗、用户转化等存在明确单向流动与显著数值差异的场景。相比传统柱状图或漏斗图,桑基图能天然暴露系统瓶颈与隐性损耗,大幅提升决策效率。本文聚焦工程落地,覆盖Excel插件快速交付、Python Plotly交互开发、R networkD3生态集成三大主流路径,兼顾数据准备铁律、索引映射规范与中文

cuml0912的博客 488

linux之grep命令简单介绍

grep命令: grep一般有两种用法,一种是搜索一个文件中包含的字符串 grep "CONFIG_TEST" ./test.c 另一种用法是搜索目录下包含指定字符串的所有符合要求的文件 grep "CONFIG_TEST" -rn ./ ...

tecoes的博客 257

Python 爬虫实战:去哪儿网机票价格爬取与出行比价分析

本文介绍了一个基于Python的机票价格监控系统,通过爬取去哪儿网数据实现多航线查询与智能比价。系统采用requests+BeautifulSoup+selenium技术栈,具备以下功能: 实时查询指定航线价格 历史价格追踪与分析 最低价推荐与价格预警 数据可视化展示 文章详细解析了去哪儿网的页面结构和反爬机制,提供了Selenium浏览器的完整配置方案,并实现了一个可稳定运行的机票采集爬虫。该系统能帮助用户掌握价格波动规律,选择最优购票时机,每年可节省可观的出行成本。

u014481728的博客 672

grep命令详细讲解

一:grep命令的基本概念和用途 grep命令是linux中一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。 在一个或多个文件中搜素字符串模式,如果字符串模式包括空格,也必须被引用,模式后的所有字符串被看作文件名。搜索的结果被送到标准输出(stdout),不影响原文件内容。 grep也可以用于shell脚本,因为grep通过返回一个状态值来说明搜索的结果,如果模式搜索成功,则返回0;如果搜索不成功,则返回1;如果搜索的文件不存在,则返回2;我们利用这些返回值就可以进行一些自动化的文

weixin_52273136的博客 7万+

基于Stateflow的驱动电机控制系统模式管理与安全策略研究

摘要 本文基于Stateflow状态机建模工具,研究了驱动电机控制系统的模式管理架构与安全策略实现方法。通过分析电机控制系统的工作模式,设计了包含初始化、待机、校准、对齐、运行、故障、复位七种状态的有限状态机模型,并建立了三级故障处理机制和降额保护策略。基于Simulink/Stateflow搭建的仿真模型实现了模式切换逻辑和安全管理功能,验证了系统能够正确响应各类控制事件,故障处理机制可有效保护系统安全。研究成果为电动汽车电机控制系统的工程开发提供了参考。 关键词:Stateflow;驱动电机控制;模式管

AI的内部世界的博客 58

Fluent验证案例03:管道中湍流流动压降计算——采用kw-sst模型计算压降更为准确。

阅读(4053) 评论(0)本案例利用Fluent计算管道中湍流流动压降。

qq_15963745的博客 877

Linux之grep命令详解

注: 部分概念介绍来源于网络 一、简介 grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。 二、grep常用用法 1、grep [-acinv] [--color=auto] '搜寻字符串' filename.txt 选项与参数: -w :被匹配的文本只能是单词,而不能是单词中的某一部分,如文本中有liker,而我

jsugs的博客 2万+

采用了fluent模拟了平壁面结霜过程。udf,很经典,可以试试。

利用该模型作为FLUENT中的源项,模拟了在局部冷却下冷表面上的霜形成,以预测霜的形态、温度分布和霜的重量,结果与实验结果吻合良好。结果显示,霜首先围绕冷却块形成,然后逐渐向其他方向扩展,冷却块上方的霜密度最大。随着时间的推移,平均霜厚度逐渐增加,生长速率减慢,而平均霜密度随增长速率变快而增加。相变传递微观过程与机理、蒸发及冷凝换热、强化传热、高效传热管、热泵、制冷、节水节能新技术、电子元器件冷却、余热回收及梯级利用等。udf,很经典,可以试试。工程热物理、空调、热能、低温制冷、化工、物理等。

qq_15963745的博客 922

linux上grep命令_如何在Linux上使用grep命令

linux上grep命令Fatmawati Achmad Zaenuri/ShutterstockFatmawati Achmad Zaenuri / ShutterstockThe Linux grep command is a string and pattern matching utility that displays matching lines from multiple files...

cumai3211的博客 1431

MATLAB与图像处理(一):图像中结构张量的求法(Structure Tensor)

1.结构张量的作用:       能够区分图像中的平坦区域,边缘,角点; 2.图像中的结构张量的定义    1)是一个矩阵;    2)与图像的水平,垂直梯度有关,定义如下: 在MATLAB中,可以用如下语句求解:[Ix,Iy]=gradient(Image); 3)求出结构张量矩阵的行列式,和迹(矩阵对角线之和)   行列式:K=det(E);   迹:  

wenyusuran的专栏 5242

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

linux中grep命令不显示中文,在Linux中grep命令大全

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

weixin_29056101的博客 1333

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Linux命令之grep

  grep命令   用处:文本搜索工具   用法:grep + ‘查找关键字的名字’ + 文件名   示例:   还在profile里面查找then      干净利落强大,有关then的信息显示    转载于:https://www.cnblogs.com/yunquan/p/5280820.html...

dengtangda9444的博客 152

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

linux:grep命令

1.作用 Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。 2.格式 grep [options] 3.主要参数 [options]主要参数: -c:只输出匹配行的计数。 -I:不区分大 小写(只适用于

cfqcfqcfqcfqcfq的博客 340

linux grep命令,强大的文本搜索

1.作用linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。2.格式grep [options]3.主要参数[options]主要参数:-c:只输出匹配行的计数。-I:不

Briver Song的专栏 1040

linux中grep命令的用法

1.作用 linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。 2.格式 grep [options] 3.主要参数 [options]主要参数: -c:只输出匹配行的计数。 -I:不区...

weixin_34085658的博客 161

linux grep命令

linux grep命令 1.作用 Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。 2.格式 grep [options] 3.主要参数 [options]主要参数: -c:只输出匹配行的计数

u013568834的专栏 588

Linux grep命令分析以及C语言版本的实现

Linux grep命令分析以及C语言版本的实现

qq_44919483的博客 1649

grep 命令详解

相信grep是UNIX和LINUX中使用最广泛的命令之一。grep(全局正则表达式版本)允许对文本文件进行模式查找。如果找到匹配模式,grep打印包含模式的所有行。grep支持基本正则表达式,也支持其扩展集。grep有三种变形,即: grep:标准grep命令,本章大部分篇幅集中讨论此格式。 egrep:扩展grep,支持基本及扩展的正则表达式,但不支持\q模式范围的应用,与之相对应的一些更加

TrueMan's Blog 2960

grep命令最常用的功能总结

1. grep最简单的使用方法,匹配一个词:grep word filename 2. 可以从多个文件中匹配:grep word filename1 filenam2 filename3 3. 可以使用正则表达式匹配:grep -E pattern f1 f2 f3... 4. 可以使用-o只打印匹配的字符,如下所示: lichao@ubuntu:command$ echo t

isuker的博客 930

Git Bash下grep命令检索内容高亮的方法

这里介绍两种 Git Bash下grep命令检索内容高亮的方法。

荷塘月色 1902
上一篇: shell特殊符号cut命令、sort_wc_uniq命令、tee_tr_split命令、shell特殊符号下
下一篇: sed命令简单使用
Young_Linux
博客等级 码龄10年 6粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值