一.基本介绍
1.awk:
awk是一个强大的文本分析工具,在对文本文件的处理以及生成报表,awk是无可替代的。awk认为文本文件都是结构化的,它将每一个输入行定义为一个记录,行中的每个字符串定义为一个域(段),域和域之间使用分割符分割。
2.功能:
流控制、数学运算、进程控制、内置的变量和函数、循环和判断
3.工作原理:
awk 会把每行进行一个拆分,用相应的命令对拆分出来的“段”进行处理。
(1)行工作模式,读入文件的每一行,会把一行的内容,存到$0里
(2)使用内置的变量FS(段的分隔符,默认用的是空白字符),分割这一行,把分割出来的每个段存到相应的变量$(1-100)
(3)输出的时候按照内置变量OFS(out FS),输出
(4)读入下一行继续操作
简单实例
[root@tx3 ~]# echo “this is a book” > awk.txt
[root@tx3 ~]# awk ‘{print $2,$1,$3,$4}’ awk.txt
is this a book
4. Awk常用内置变量表:
1 $0 当前记录(作为单个变量)
2 $1~$n 当前记录的第n个字段,字段间由FS分隔
3 FS 输入字段分隔符 默认是空格