.....(
以下省略
)......
上面特殊字体那一行呢,其实就是使用
pr
处理后所造成的标题啦!标题中会有『文件时间』、『文
件档名』及『页码』三大项目。
更多的
pr
使用,请参考
pr
的说明啊!
^_^
11.5
重点回顾
.
正规表示法就是处理字符串的方法,他是以行为单位来½行字符串的处理行为;
.
正规表示法透过一些特殊符号的辅助,可以让使用者轻易的达到『搜寻
/
删除
/
取代』某特定字符串的处理程
序;
.
只要工具程序支持正规表示法,那么该工具程序就可以用来作为正规表示法的字符串处理之用;
.
正规表示法与通配符是完全不一样的东西!通配符
(wildcard)
代表的是
bash
操作½口的一个功能,
但正
规表示法则是一种字符串处理的表示方式!
.
使用
grep
或其他工具½行正规表示法的字符串比对时,因为编码的问题会有不同的状态,因此,
你最好
½
LANG
等变量设定为
C
或者是
en
等英文语系!
.
grep
egrep
在正规表示法里面是很常见的两支程序,其中,
egrep
支持更严½的正规表示法的语法;
.
由于编码系统的不同,不同的语系
(LANG)
会造成正规表示法撷取资料的差异。因此可利用特殊符号如
[:upper:]
来替代编码范围½佳;
.
由于严½度的不同,正规表示法之上还有更严½的延伸正规表示法;
.
基础正规表示法的特殊字符有:
*, ., [], [-], [^], ^, $
等!
.
常见的支持正规表示法的工具软件有:
grep , sed, vim
等等
.
printf
可以透过一些特殊符号来½数据½行格式化输出;
.
awk
可以使用『字段』为依据,½行数据的重新整理与输出;
.
文件的比对中,可利用
diff
cmp
½行比对,其中
diff
主要用在纯文本文件方面的新旧版本比对
.
patch
指令可以½旧版数据更新到新版
(
主要亦由
diff
½立
patch
的补丁来源文件
)
11.6
本章习题
(
要看答案请½鼠标移动到『答:』底下的空白处,按下左键圈选空白处即可察看
)
.
情境模拟题一:透过
grep
搜寻特殊字符串,并配合数据流重导向来处理大量的文件搜寻问题。
o
目标:正确的使用正规表示法;
o
前提:需要了½数据流重导向,以及透过子指令
$(command)
来处理档名的搜寻;
我们简单的以搜寻星号
(*)
来处理底下的任务:
1.
利用正规表示法找出系统中含有某些特殊关键词的文件,举例来说,找出在
/etc
底下含有星号
(*)
文件与内容:
½决的方法必须要搭配通配符,但是星号本身就是正规表示法的字符,因此需要如此½行:
[dmtsai@study ~]$
grep '
\
*' /etc/* 2>
/dev/null
你必须要注意的是,在单引号内的星号是正规表示法的字符,但我们要找的是星号,因此需要加上