Linux--awk

awk主要用来格式化文本

1.awk语法
awk [参数] [处理规则] [操作对象]
    awk处理规则的流程
    BEGIN{}
    //
    {}
    END{}
2.参数:
-F
指定文本分隔符(默认是以空格问分隔符)
awk -F'f' '{print $NF}' j.txt

Linux--awk
①打印系统所有用户解析器
Linux--awk

3.awk的生命周期

grep 、sed和awk都是读一行处理一行,直到处理完毕

1.接收一行作为输入
2.把刚刚读进来得到的文本进行分解
3.使用处理规则处理文本
4.输入一行,就赋值给$0,直至处理完成
5.把处理完的所有数据交给END{}来再次处理
4.awk中的预定义变量

Linux--awk
此为示例图

$0 : 代表当前行

加个别的符号可以看的清楚点
awk -F: '{print $0,"^^^"}' /etc/passwd

Linux--awk

$n : 代表第n列

awk -F: '{print $2}' /etc/passwd

Linux--awk

NF : 记录当前字段数

awk -F: '{print NF}' /etc/passwd

Linux--awk

NR : 用来记录行号

awk -F: '{print NR}' /etc/passwd

Linux--awk

FS : 指定文本内容分隔符(默认是空格)
FS 的优先级要高于 -F

awk 'BEGIN{FS=":"}{print $NF, $1}' /etc/passwd

Linux--awk

OFS : 指定打印分隔符(默认是空格)

awk -F: 'BEGIN{OFS=">>"}{print $NF, $2}' /etc/passwd

Linux--awk

上一篇:shell命令篇--awk


下一篇:Linux三剑客之一awk