sed 是一种流编辑器,可以配合正则表达式对文本行进行匹配,按行对文本进行插入、删除、替换操作。
命令格式如下,动作包含了要处理的范围,处理方式和处理时所需的内容:
例如,将文本中的john替换为jack。
例如:在第2行下面追加一行,内容是“rose”。
awk 是一种处理文本文件的语言,awk 会根据分隔符,将每一行分成若干列字段,依次用 $1 、 $2 、 $3 代表第一个字段、第二个字段、第三个字段等等,$0表示一整行。awk与sed一样都是按行进行对数据进行处理,awk可以快速的对数据进行分列。
命令格式如下,“条件”代表匹配要处理的数据,可以搭配正则表达式使用,{动作}表示对数据进行的处理。
例如:计算每个学生的平均成绩,并追加到最后一列。其中变量NF表示列数。
例如:只打印奇数行数据。变量NR表示当前行号。
常用正则表达式:
^ 开头
$ 结尾
. 一个非空字符
^$ 空行
* 匹配前一个字符0个或者多个
.* 全字符匹配
[ ] 匹配括号中任意字符
扩展正则表达式:
? 匹配前一个字符0次或者1次
+ 匹配前一个字符1次或者多次
| 或者
( ) 分组匹配
Copyright© 2013-2020
All Rights Reserved 京ICP备2023019179号-8