linux文本处理三剑客之—AWK

linux文本处理三剑客 grep,egrep,fgrep;文本过滤 sed:文本编辑(行编辑器) awk:报表生成器,文本格式化,能够实现根据需要对文本做美化后输出的,这更是一个强大到没有朋友的工具

awk类似于bash,支持变量,数组,判断,一个过程式语言它都有

AWK由来:由三个人名字首字母缩写而来 创始人:Alfred AHo,Peter Weinberger,Brian Kernighan 但是我们在linux上使用的AWK是另外一种,AWK在上个世纪70年代开发,这是一个古老的工具,而后在时代变迁中AWK被GUN二次开发为GAWK,在centos被符号链接为AWK [root@www bin]# ll awk lrwxrwxrwx. 1 root root 4 Apr 13 14:22 awk -> gawk GUN在开发awk时做了很多加强,目前GAWK是最强版本

功能:进程控制,函数变量等,完整的过程式编程语言

AWK运行起来比起grep是差很多的

AWK的运行方式: 支持三种方式 1,awk命令行 #awk 2,awk程序文件 #awk -f /path/from/awkname.file 3,awk脚本 #!/bin/awk -f

基本用法: gawk [options] 'program' file1 file2 ... program:PATTERN{ACTION STATEMENT} 由语句组成,各语句间使用分号分割;

ACTION:print,printf AWK是一个格式化工具,为了达到它的目标,它一次从文本文件中读出一行数据,而后把每一行文本,读一行处理一行遍历整个文本,读至awk的空间,按照指定的分隔符进行切法,切法标准和条件:以指定的分隔符指定的切出来,而后被切成N段变量$1,$2,$3,$4,直到最后,整行的是$0,读取文本后赋值给每个$。

linux文本处理三剑客之—AWK(一)下载文档