二、LINUX文本处理三剑客之grep

1. grep一般格式:grep [选项] 基本正则表达式 [文件],其中基本正则表达式需要用引号引起来

  • 引号引起来的作用:a、防止被误解为shell命令,b、可以用来查找多个单词组成的字符串
  • grep选项:-c  只输出匹配行的计数

                             -i   不区分大小写

        -h   查询多文件时不显示文件名

        -l     查询多文件时只输出包含匹配字符的文件名

        -n    显示匹配行及行号

        -s     不显示不存在或者无匹配文本的错误信息 

        -v     显示不包含匹配文本的所有行

  • 查询多个文件:如果要在当前目录下所有.doc文件中查找字符串“sort”,方法如下:grep “sort” *.doc
  • 行匹配:grep -c “good” data.f    返回good输出的次数
  • 行数:grep -n “good” data.f       显示满足匹配模式的所有行行数
  • 显示非匹配行:grep -v “48” data.f
  • 精确匹配:grep “\<file\>” data.f  精确匹配file,file前后必须为空格或者<enter><tab>
  • 大小写不敏感:grep -i “Fille” data.f 也能匹配到file
  • POSIX字符类:[:alnum:]匹配字母和数字,<=>[A-Za-z0-9]

                                  [:digit:]   匹配十进制数字,<=>[0-9]

            [:alpha:]匹配字母,<=>           [A-Za-z]

              [:lower:]匹配小写字母,<=>    [a-z]

            [:upper:]匹配大写字母,<=>  [A-Z]

          [:space:]匹配空白字符(空格和水平制表符)

2.grep与简单的管道,重定向(以后还要做详细介绍)

1. grep与passwd文件,重定向(>,>>)

$ grep “songsongsong” /etc/passwd  > ~/temp.txt     //将grep的输出信息重定向到temp.txt,覆盖

$ grep “songsongsong” /etc/passwd  > >~/temp.txt     //将grep的输出信息重定向到temp.txt,末尾添加

2. grep与ps命令,管道

$ ps ax | grep “dongbala”        //将ps ax输出的信息作为grep “dongbala”的输入,然后正则后输出到屏幕

3.grep与字符串

$ STR=”Mary Joe Peter Pauline”

$ echo $STR | grep “Mary”    //echo打印信息 作为grep “Mary” 的输入进行正则匹配,并将信息打印到屏幕

Mary Joe Peter Pauline

4.grep与grep

$ grep “asads” test.txt | grep “aaaaa”

 

二、LINUX文本处理三剑客之grep

原文地址:https://www.cnblogs.com/ai-bingjie/p/14106228.html

系统相关
我还没有学会写个人说明!
上一篇

美国与欧洲宇航局筹划将一小部分火星样品运回地球

下一篇

【原创】大叔经验分享(125)linux系统蓝牙设备频繁断开

你也可能喜欢

评论已经被关闭。

插入图片