第十二章 正规表达式与文件格式化处理

来源:互联网 发布:node需要nginx吗 编辑:程序博客网 时间:2024/05/22 00:12

1 前言: 什么是正规表示法

1.1 什么是正规表示法

1.2 正规表示法对于系统管理员的用途

1.3 正规表示法的广泛用途

1.4 正规表示法与Shell在Linux当中的角色定位

1.5 延伸的正规表示法

2 基础正规表示法

2.1语系对正规表示法的影响

2.2 grep的一些进阶选项

grep在数据中查询一个字符串时,是以“整行”为单位来进行数据的截取的。

2.3 基础正规表示法练习

^word :待搜索的字符串(word)在行首

word$:待搜索的字符串(word)在行尾

*:代表【一定有一个任意字符】的字符

\:跳脱字符,将特殊符号的特殊意义去除

*:重复零个到无穷多个的前一个RE字符

[list]:字符集合的RE字符,里面列出想要撷取的字符

[n1-n2]:字符集合的RE字符,里面列出想要撷取的字符范围

[^list]:字符集合的RE字符,里面列出不要的字符串或范围

2.4 基础正规表示法字符汇整(characters)

2.5 sed工具:行的新增/删除

3 延伸正规表示法

4 文件的格式化与相关处理

4.1 printf:格式化打印

4.2 awk:好用的数据处理工具

4.3 档案比对工具:diff,cmp,patch

4.4 档案打印准备工具:pr

5 重点回顾

1)正规表示法就是处理字符串的方法,他是以行尾单位来进行字符串的处理行为

2)正规表示法透过一些特殊符号的辅助,可以让使用者轻易的达到【搜寻/删除/取代】某特定字符串的处理程序

3)只要工具程序支持正规表示法,那么该工具程序就可以用来做为正规表示法的字符串处理之用

4)正规表示法与通配符是完全不一样的东西!通配符代表的是bash操作接口的一个功能,但正规表示法则是一种字符串处理的表示方法

5)使用grep或其他工具进行正规表示法的字符串比对时,因为编码的问题会有不同的状态,因此,你最好将LAND等变量设定为C或者是en等英文语系

6)grep与egrep在正规表示法里面是很常见的两支程序,其中,egrep支持更严谨的正规表示法的语法

7)由于编码系统的不同,不同的语系(LANG)会造成正规表示法撷取资料的差异,因此可利用特殊符号如[:upper:]来替代编码范围较佳

8)由于严谨度的不同,正规 表示法之上还有更严谨的延伸正规表示法

9)常用的正规表示法工具有:grep,sed,vim等待

10)printf可以透过一些特殊符号来将数据进行格式化输出

11)awk可以使用[字段]为依据,进行数据的重新整理与输出

12) 文件的比对中,可利用diff及cmp进行比对,其中diff主要用在纯文本档案方面的新旧版本比对

13)patch指令可以将旧版数据更新到新版(主要亦由diff建立patch的补丁来源档案)



0 0