1、sed、awk的简单介绍:
sed是一种行编辑器,sed用来把文档或字符串里面的文字经过一系列编辑命令转换为另一种格式输出。sed通常用来匹配一个或多个正则表达式的文本进行处理。
awk是一种优良的文本处理工具,awk更像是一个排版命令,可以让文件按照自己的想法优美的输出出来,该实用工具扫描文件中的每一行,查找与命令行中所给定内容相匹配的模式。如果发现匹配内容,则进行下一个编程步骤。如果找不到匹配内容,则继续处理下一行。
2、sed的用法
sed [options] "script" FILE ...
选项:
-n: 静默模式,不输出模式空间中的内容;
-r: 扩展的正则表达式
-f: /path/to/sed_script_file: 指定sed脚本文件
-e: 'script' -e 'script': 指定多个编辑指令
-i: 直接编辑原文件
编辑命令:
d: 删除
p: 打印
i: \text:
a: \text:
r: /path/to/somefile: 在指定位置把另外一个文件的内容插入进来
w: /path/to/somefile:将符合条件的所有行保存至指定的文件中
=:显示符合条件的行的行号
s///: 查找条件可以使用模式,但要替换的内容不行
地址定界:
startline,endline
1,3
/pat1/,/pat2/
/pattern/
3、awk的用法:
awk [options] 'script' FILE ...
awk [options] '/pattern/{action}' FILE ...
action: print $1, $1
地址定界:
/pat1/,/pat2/
/pattern/
expression:表达式
>, >=, <, <=, ==, !=, ~
BEGIN:执行前的做准备工作
END: 执行后的收尾工作
awk的常用四种分隔符:
输入:
行分隔符
字段分隔符
输出:
行分隔符
字段分隔符
awk的内置变量:
NF:字段数
FS: 读入行时使用的字段分隔符,默认为空白
OFS: 输出时使用字段分隔符,默认为空白