1,正则介绍。

    正则就是一串有规律的字符串。掌握好正则对shell脚本有很大的帮助,各种编程语言中都有正则,原理是一样的。其实正则表达式只是一种思想、一种表示方法,只要我们使用的工具支持这种表示方法,那么这个工具就可以处理正则表达式的字符串。常用的工具有grep、sed、awk,它们都是对文本的行进行操作的。

2.grep/egrep工具。

    命令的格式:grep [-cinvABC] 'word' filename,常用选项的含义。

    -c:打印符合要求的行。

    -i:表示忽略大小写。

    -n:输出符合要求的行及其行号。

    -v:表示打印不符合要求的行。

    -A:后面跟一个数字,打印符合要求的行以及下面的n行。

    -B:后面跟一个数字,打印符合要求的行以及上面的n行。

    -C:后面跟一个数字,打印符合要求的行以及上和下的各n行。

    -r:遍历所有子目录,只对文件有效。

    示例:

    将passwd文件拷贝到新建的grep目录下。

    正则介绍 grep

    打印出passwd文件中带有nologin的行。在CentOS7中grep命令自带颜色选项。

    正则介绍 grep

    打印行数。

    正则介绍 grep

    过滤出带有关键字的行,并输出行号。

    正则介绍 grep

    不区分大小写并输出行号。

    正则介绍 grep

    过滤出不带有某个关键字的行并输出行号。

    正则介绍 grep

    过滤出所有包含数字的行。

    正则介绍 grep

    过滤出所有不包含数字的行。

     正则介绍 grep

     过滤掉空行。在正则表达式中,^表示行的开始,$表示行的结尾,空行用^$来表示。

    过滤掉所有以#开头的行。

    正则介绍 grep

    过滤掉所有的空行。

    正则介绍 grep

    打印不以英文字母开头的行。

    正则介绍 grep

    过滤出任意一个字符。.表示任意一个字符,图中r.o表示把r与o之间有任意字符的行过滤掉。

    正则介绍 grep

    过滤出重复字符。*表示零个或多个*前面的字符。

    正则介绍 grep  

    指定要过滤出的字符出现次数。

    正则介绍 grep    

    过滤出一个或多个指定的字符。 egrep可以使用符号+,表示匹配一个或多个+前面的字符,+号不支持被grep直接使用。

    正则介绍 grep

    正则介绍 grep

    过滤出0个或一个指定的字符。

    正则介绍 grep

    过滤出字符串1或字符串2。

    正则介绍 grep

    egrep中()的应用。这里的()表示一个整体,及把rooo和rato的行过滤出来。

    正则介绍 grep

    

相关文章:

  • 2021-12-14
  • 2021-04-27
  • 2021-07-08
  • 2022-12-23
  • 2021-07-20
  • 2021-07-01
  • 2022-01-20
  • 2021-12-13
猜你喜欢
  • 2021-09-04
  • 2021-11-28
  • 2021-11-18
  • 2021-12-13
  • 2021-12-12
相关资源
相似解决方案