sed 和aw k 入门 13Chapter 设计Script 时,有时候需修改脚本,例如:删除或置换某些关键词
像这种在Script 执行过程动态修改文件的做法,称为流编辑
具有流编辑能力的工具,称为流编辑器(stream editer)
sed 是这方面的佼佼者,可补Bash 的不足
另外,Script 执行时可能要制作报表,呈现各字段信息
传统上,能和Bash 完美搭配的,非awk 莫属
实战Linux Shell编程与服务器管理本章将介绍这两个强大工具的基本用法,熟悉这两者,可让你的Script 如虎添翼,威力大增
1 正则表达式 在介绍sed 和awk 之前,要先具备正则表达式的基本知识
正则表达式是组成“样式”的基本语法,而“样式”是运用sed 和awk 必备的能力
sed和awk 相同的运行方式是:只要符合“样式”的数据行,就对它执行指定的“操作”
因此,了解样式的基本语法,运用sed 和awk 才能得心应手
何谓正则表达式 正则表达式是一种描述的方法,一种小型的语言,可表示某种样式或若干种样式的组合,它的威力在于仅需几个简单的符号 ,便 可代 表许 多 字符串 共 同的样子
这是固 定样式无 法比拟 的,例如,样式Shell,只能比 对固 定的字符串 ,作用不大,但 若改成sh*,却 可比 对 she 、Shell、 short 等 多 种字符串 ,涵 盖 面较 大,因此,发 挥 的作用较 强
以 下 介绍正则表达式的语法:
一点 代 表一个字符
代 表任 意 的字符
,代 表3 个字符,中 间 是T,左 右 两边 是任 意 的一个字符
代 表字符长 度 是3 的字符串
若想 比 对
这个字符本身 ,需加 上转 义 字符(\),写 成\
例如:样式data\
代 表data