awk命令使用

Posted 追阳

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了awk命令使用相关的知识,希望对你有一定的参考价值。

awk: 报告生成工具

  把文件中读取到的每一行的每个字段分别进行格式化,而后进行显示;

 

awk --> new awk --> nawk

GNU awk, --> gawk

 

用法格式:

awk [option] \'script\' FILE ...

awk [option] \'/pattern/{action}\' FILE ...

action: print $1

模式:

  地址界定: /pat1/,/pat2/

   /pattern/   还可以在界定模式上面加 ! 取反 -->  !/pattern/

   expression: 表达式

     > :大于

    >=:大于等于

    < : 小于

    <= :小于等于

    == :等于

    != :不等于

    ~ : 模式匹配

 

 

 打印id号大于等于500 的用户

awk -F : \'$3>=500{print $1}\' /etc/passwd

 

BEGIN: 执行前的准备工作

 

 END: 执行后的收尾工作

 

awk的内置变量 

NF: 字段数,在执行打印时,将打印最后一个字段内容

 

 FS :读入行时,使用的字段分隔符,默认为空白。下面是变量赋值指定分隔符为 : ,要加引号。

 

 OFS: 输出时使用字段分隔符,默认为空白,下面指定为 * 作为输出分隔符:

 

 

练习:

1)显示GID小于500的组

 

 2)显示默认shell为nologin的用户

 

   

3)显示eth0网卡文件的配置信息,注意,只显示等号后面的值

 

 

 4)显示/etc/sysctl.conf文件中定义的内核参数,只显示名称

 

 

5)显示eth0网卡的ip地址,通过ifconfig的命令结果进行过滤

 

 

 awk 高级部分待续

 

以上是关于awk命令使用的主要内容,如果未能解决你的问题,请参考以下文章

使用 cat、awk 和命令无法将结果重定向到 txt 文件

精通awk系列:awk命令结构和awk语法结构

使用 awk 解析 nm 命令的输出 - Linux Bash

如何用awk命令提取文件中的某一列并统计该列中某个数字出现的次数?

awk命令提取某行的最后一个数值

正则表达式中awk使用方法