美文网首页
linux awk工具

linux awk工具

作者: ChinaLeee | 来源:发表于2018-07-20 23:37 被阅读0次

awk是一个非常好用的数据处理工具。相较于sed常常一整行处理,awk则比较倾向于一行当中分成数个“字段”处理,awk处理方式如下:   $awk'条件类型1{动作1} 条件类型2{动作2} ...'filename

1.查看最近5条登录用户和ip地址

$last-n5|awk'{print $1"\t"$3}'lzyer 192.168.56.1reboot boot

lzyer    192.168.56.1reboot    boot

lzyer    192.168.56.1   

wtmp    Sat

注意:$0代表整行

变量名称代表意义

NF每一行($0)拥有字段总数

NR目前awk处理的第几行

FS目前分隔符,默认是空白


awk的逻辑运算

运算单元      代表意义

>                   大于

<                   小于

>=                 大于等于

<=                 小于等于

==                 等于

!=                  不等于

值得注意的是那个“ == ”的符号,因为:

逻辑运算上面亦即所谓的大于、小于、等于等判断式上面,习惯上是以“ == ”来表示;

如果是直接给予一个值,例如变量设置时,就直接使用 = 而已。

举例来说,在 /etc/passwd 当中是以冒号 ":" 来作为字段的分隔, 该文件中第一字段为帐号,第三字段则是 UID。那假设我要查阅,第三栏小于 10 以下的数据,并且仅列出帐号与第三栏, 那么可以这样做:

$cat/etc/passwd|awk'{FS=":"} $3<10 {print $0}'root:x:0:0:root:/root:/bin/zsh

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdown

halt:x:7:0:halt:/sbin:/sbin/halt

mail:x:8:12:mail:/var/spool/mail:/sbin/nologin

统计数据例子:

$cat pay.txt

Name    1st    2nd    3th

VBird  230002400025000DMTsai  210002000023000Bird2  430004200041000

$cat pay.txt|awk 'NR==1{printf "%10s %10s %10s %10s %10s\n",$1,$2,$3,$4,"Total"} \

NR>=2{total=$2+$3+$4

> printf"%10s %10d %10d %10d %10.2f\n",$1,$2,$3,$4,total}' Name 1st 2nd 3th Total}'

     VBird      23000240002500072000.00    

    DMTsai      21000200002300064000.00    

    Bird2      430004200041000126000.00

相关文章

  • awk

    1- awk是什么 awk是linux环境下的一个命令行工具,但是由于awk强大的能力,我们可以为awk工具传递一...

  • Linux Shell:awk文本处理工具,Linux的SQL神

    摘要:Linux,Shell,awk awk简介 awk是一个强大的文本分析工具,尤其是对linux中的结构化二维...

  • linux awk工具

    awk是一个非常好用的数据处理工具。相较于sed常常一整行处理,awk则比较倾向于一行当中分成数个“字段”处理,a...

  • Linux

    linux awk命令详解、linux awk命令Linux常用操作指令Linux netstat命令详解 awk...

  • 预习笔记day14(awk的语法参数以及简单应用)

    1. awk是linux运维工作中最重要、最强大的工具之一。 2.awk命令语法及参数: awk option ...

  • awk

    awk的简介和功能 awk: Linux 文本处理三剑客:grep、sed和awk。其中grep是一种文本过滤工具...

  • Linux命令学习之:awk命令

    Linux命令学习之:awk命令 简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk...

  • 【shell】AWK程序设计语言

    awk不只是Linux的一个工具,由于awk脚本具有编程语言三要素,顺序,循环,判断,awk还是一门编程语言,主要...

  • Linu awk命令

    简介: awk命令是Linux的文本统计、分析工具。说白话点,就是,awk是参数为文本文件的一行字符串的Linux...

  • Linux处理文本的三驾马车—awk命令常用功能

    Linux处理文本的第三驾马车—awk命令 AWK是一种优良的文本处理工具,Linux及Unix环境中现有的功能最...

网友评论

      本文标题:linux awk工具

      本文链接:https://www.haomeiwen.com/subject/qcscmftx.html