你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

Linux系统中的grep命令

[复制链接]
gaosmile 发布时间:2020-6-7 18:35
Linux系统中的grep命令是一种功能强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。

- w+ n  {: S+ E  p  x1 x$ q
1、语法参数% S# t! w- _8 I3 I( }" B8 A) t+ x
grep [options][options]主要参数:-c:只输出匹配行的计数。
) I! N# B* j5 O+ h* ^& D

( \: T# D$ h. [  n. z8 X-i:表示不区分大小写。4 b# ^1 C9 P2 }' {
-h:查询多文件时不显示文件名。0 {7 |0 Y! z; L6 e
-l:查询多文件时只输出包含匹配字符的文件名。& ^7 \/ [4 M' E- d. b; x
-n:显示匹配行及行号。
' L# Y. o1 ~6 N% }; }3 Q: U+ P-s:不显示不存在或无匹配文本的错误信息。  _, ]# |& }8 w& D9 c" R
-v:显示不包含匹配文本的所有行,表示反向查找。
7 G" f+ T* U# k4 X6 S5 J5 ~- n
--color=auto :可以将找到的关键词部分加上颜色的显示* c0 |" X) _3 ]# T

. z, A3 k, J+ P( [% K) G( `& h
/ M, n" s3 m- _8 c2 }0 \) j/ N7 v
2、实例:
1 G- D; X+ J- ~) L& D+ Q1)查找包含“png”的行
- J& I& S% Y: m2 R/ I3 F
  • [linuxmi@linux:~/linuxmi迷]$ grep -n 'png' linuxmi.py
    , I3 n% r7 k7 v  }, R( H( h& X  x
2)查找不包含“png”的行
  • [linuxmi@linux:~/linuxmi迷]$ grep -vn 'png' linuxmi.py& R0 o: h0 P9 ?) c7 s
3)查询na前面不是v的字符串
  • [linuxmi@linux:~/linuxmi迷]$ grep -n '[^v]na' linuxmi.py& s# @# S* o( Q/ N* y4 K( E
4)查询na前面不是小写字母的字符串
  • [linuxmi@linux:~/linuxmi迷]$ grep -n '[^a-z]na' linuxmi.py$ o+ E, Y& d* G; [# Y
5)^匹配以某个字符开头的行。查询以ba开头的字符串
  • [linuxmi@linux:~/linuxmi迷]$ grep -n '^ba' linuxmi.py
    2 Y, ]9 {1 }9 N1 F
6)[^]匹配未包含的一个任意字符。查询不以字母开头的字符串
  • [linuxmi@linux:~/linuxmi迷]$ grep -n '^[^a-zA-Z]' linuxmi.py
    * r  Z) S' r: V/ Y' k7 a: J1 I- g
7)$匹配以某个字符结尾的行。查询以:结尾的字符串
  • [linuxmi@linux:~/linuxmi迷]$ grep -n '\.$' linuxmi.py//
  • 其中小数点“.”具有特殊意义,所以需要使用转义字符“\”将具有特殊意义的字符转化为普通字符" S5 f+ [1 h0 o7 r+ d3 d0 ]
$ d- z. P2 ]' i# o& F7 B' k
8)“.”匹配除\r\n外的任意一个字符。查询l与k之间包含两个字符的行
  • [linuxmi@linux:~/linuxmi迷]$ grep -n 'l..k' linuxmi.py
    , b* W; Z+ o5 m2 e+ k/ [7 F2 A
9)查询包含连续e字母的行
  • [linuxmi@linux:~/linuxmi迷]$ grep -n 'eee*' linuxmi.py//“*”表示的是重复零个或多个前面的单字符
    . |& c! Y- _) v. F8 G
  u8 F  q$ l' i5 K- E9 V) V
10)查询以l开头以e结尾中间至少包含一个x的行
  • [linuxmi@linux:~/linuxmi迷]$ grep -n 'lxx*e' linuxmi.py3 F6 n! `) @4 j$ d
11)查询以l开头k结尾,中间的字符可有可无的行
  • [linuxmi@linux:~/linuxmi迷]$ grep -n 'l.*k' linuxmi.py( B6 o5 b& _4 Z# J7 y
12){n}匹配确定的n次。查询包含两个e的行
  • [linuxmi@linux:~/linuxmi迷]$ grep -n 'e\{2\}' linuxmi.py//“{}”是特殊字符需要用“\”转义6 ?# @; r( k0 }4 K
微信图片_20200607183407.png
赞 收藏 评论0 发布时间:2020-6-7 18:35

举报

0个回答

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版