首先什么是awk呢?一种linux中的文本处理命令,我们先用vim编辑器等来构造一个文本,windows下建议使用git bash更方便

 

 

 

接下来输入命令 awk ‘print{$1 $2}’  a.txt

 

 这里解释几个名词:

记录 record:就是文本中的一行

域 field:就是一列

FS field sepertor:域分割符,也就是用什么来切割每一个记录,使之成为多个域,默认是多个空格

RS record sepertor:记录分隔符,默认是\n

NF number of field:每一个记录有多少个域

NR number of record:已经读出的记录数,就是行号,从1开始

$n:第n个域的值,如果n=0,那就取整个记录

这些都是awk的内置变量,接下来指定FS

 

我们指定了用2来作为分割符,那么第一行就会被分割成2个域 1  和  3

 设置变量0="ok",注意是双引号,在把o加到域1后面

 

 

 条件判断 当地1个域==“a”,才会打印域1,和域2,注意如果是字符串,要用双引号

BEGIN{}  这个语句会先运行,且只运行一次

{}这个语句每个记录都会运行一次

EDN{} 这个语句会最后运行,且只运行一次

 

 

 

 awk是运维常用的一个文本处理语言,对于测试来说很偏,但是面试如果你会这个,能提升面试官对你的好感,简历上写上这个也能显得更加亮眼,当然这只是awk的常用知识,还有内置函数和自定义函数等,可以自行百度。