正则表达式 grep与sed的文本处理

一:整理正则表达式正则表达式

正则表达式是对字符串操做的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。它由一些普通字符和一些元字符(metacharacters)组成。普通字符包括大小写的字母和数字,而元字符则具备特殊的含义。bash

主要经常使用的有:ssh

元字符 功能 元字符 功能
^ 匹配字符串的开始位置 $ 匹配字符串的结束位置
. 匹配任意单个字符 * 匹配子表达式0次或n次
+ 匹配子表达式一次或n次 {n} 匹配n次
{n,} 至少匹配n次 {n,m} 匹配n-m次
匹配子表达式一次或0次 () 将括号里面的表达式定义为组
[xyz] 匹配xyz任意一个字符 [a-Z] 匹配指定字符范围的任意一个
[^a-Z] 匹配不在范围的任意字符 |

二:grep使用(正则表达式及字符处理)atom

目标文件/etc/passwd,使用grep命令或egrepspa

1.显示出全部含有root的行:3d

Image(58)

2.输出任何包含bash的全部行,还要输出紧接着这行的上下各两行的内容:blog

Image(59)

3.  显示出有多少行含有nologin。ci

Image(60)

4.显示出那些行含有root,并将行号一块输出。字符串

Image(61)

5.显示出文件中get

6.新建用户

    abominable

    abominate

    anomie

    atomize

 编写正则表达式,将他们匹配出来

Image(62)

7.建四个用户

   Alex213sb

   Wpq2222b

   yH438PIG

   egon666

   egon

 过滤出用户名组成是字母+数字+字母的行

Image(63)

8.显示出/etc目录下全部包含root的文件名

Image(64)

9. 过滤掉/etc/ssh/sshd_config内全部注释和全部空行

Image(65)

三:Sed使用:以/etc/passwd文件为模板

1,删除文件每行的第一个字符。

Image(66)

2,删除文件每行的第二个字符。

Image(67)

3,删除文件每行的最后一个字符。

Image(68)

4,删除文件每行的倒数第二个字符。

Image(69)

5,删除文件每行的第二个单词。

Image(70)

6,删除文件每行的倒数第二个单词。

Image(71)

7,删除文件每行的最后一个单词。

Image(72)

8,交换每行的第一个字符和第二个字符。

Image(73)

9,交换每行的第一个字符和第二个单词。

Image(74)

10,交换每行的第一个单词和最后一个单词。

Image(75)

11,删除一个文件中全部的数字。

Image(76)

12,删除每行开头的全部空格。

Image(77)

13,用制表符替换文件中出现的全部空格。

Image(78)

14,把全部大写字母用括号()括起来。

Image(79)

15,打印每行3次。

Image(80)

16,只显示每行的第一个单词。

Image(81)

17,打印每行的第一个单词和第三个单词。

Image(82)

18,用命令获取格式为    mm/yy/dd    的日期格式,结合管道,将其换成   mm;yy;dd格式

Image(83)

相关文章
相关标签/搜索