Linux 三剑客(Awk、Sed、Grep)

时间:2021-07-02 03:50:13

grep/egrep

主要作用:给搜索过滤出来的内容加上颜色和排除功能

常用参数

-V             打印grep的版本号
-E 解释PATTERN作为扩展正则表达式,也就相当于使用egrep。 或操作
-F 解释PATTERN作为固定字符串的列表,由换行符分隔,其中任何一个都要匹配。也就相当于使用fgrep。
-G 将范本样式视为普通的表示法来使用。这是默认值。加不加都是使用grep。
-A num 匹配到搜索到的行以及该行下面的num行
-B num 匹配到搜索到的行以及该行上面的num行
-C num 匹配到搜索到的行以及上下各num行
-v 排除,反转匹配,选择没有被匹配到的内容。
-n 给grep过滤出来的内容加上行号
-o 显示命令每一次匹配到了什么
-i 不区分大小写
-c --count 计算符合样式的行数
--color=auto 可以将找到的关键词部分加上颜色的显示

sed

主要功能:增删改查

常用参数

-V         --version    显示版本信息
-h --help 显示帮助
-n 取消默认输出,与p结合使用
-i 修改文件的内容
-i.bak 先备份,然后在修改文件内容
-r 支持扩展正则表达式符号
; 多条命令分隔符,取不连续的多行
a 在某行后面追加一行内容
i 在某行前面插入一行内容
c 在原位置替换。
s 替换指定字符
g 获得内存缓冲区的内容,并替代当前模板块中文本
p 打印模板块的行
d 删除,删除选择的行
! 非的意思,取反
= 打印当前行号

awk

主要作用:取行取列、计算和统计

常用参数

-V     显示版本号信息
NR ==表示行号
$n 取某一列的内容
$0 取一整行内容
$NF 最后一列
-v 创建或修改awk内部变量
FS 简写F输入域分隔符,默认为一个空格
OFS 输出域分隔符,默认为一个空格
! 非
i=i+1 == i++ 计算次数,总数
i=i+某一列 计算总和,累加