awk

作者: 泠泉 | 来源:发表于2019-03-14 18:06 被阅读0次
20190314-065245.jpg
  • tip

awk经过改进生成的新的版本nawk,gawk. linux下是gawk

  • 格式
    awk [options] command file(s)
    awk -f awk-script-file file(s)
    • command = pattern {awk操作命令}
      • pattern: 正则表达式;逻辑判断式
      • awk操作命令:
        • 内置函数:print() printf() getline()..
        • 控制指令:if(){..}else{..}; while(){..};
    • options
      • options: -F field-separator(默认为空格)
        awk -F ':' '{print $3}' /etc/passwd

  • awk内置变量
    • $0:表示整个当前行
    • $1:每行第一个字段
    • $2:每行第二个字段
    • NR:每行的记录号
    • NF:字段数量变量
    • FILENAME:正在处理的文件名

  • 案例
    awk -F ':' '{printf("Line:%3s Col:%s User:%s\n",NR,NF,$1)}' passwd
    awk -F ':' '{if ($3>100) print "Line: "NR,"User: "$1}' passwd

sed '/Error/p' fresh.log | awk '{print $1}'
awk '/Error/{print $1}' fresh.log


  • awk逻辑
    ~,!~:匹配正则表达式
    ==,!=,<,>:判断逻辑表达式

awk -F ':' '$1~/^m.*/{print $1}' passwd
awk -F ':' '$3>100{print $1,$3}' passwd
awk -F ':' '$3==100{print $1,$3}' passwd
awk -F ':' '$3!=100{print $1,$3}' passwd


  • windows下练习
# 打印ip
ipconfig | sed -n "/IPv4.*/p" | awk -F ":" "{print $2}"
ipconfig | awk -F ":" "/IPv4/{print $2}"

  • awk扩展格式
    BEGIN{}{}END{}

awk -F ':' 'BEGIN{print "Line Col User"}{print NR,NF,$1}END{print"----"FILENAME"---"}' passwd

ls -l | awk 'BEGIN{size=0}{size+=$5}END{print " size is " size}'

awk -F ':' 'BEGIN{count=0}$1!~/^$/{count++}END{print " count = "count}' passwd

awk -F ':' 'BEGIN{count=0}$1!~/^$/{count++}END{print " count= "count}' passwd

awk -F ':' 'BEGIN{count=0}{if ($3>100) name[count++]=$1}END{for (I=0;i<count;i++) print I,name[I]}' passed

netstat -anp | awk '$6~/CONNECT|LISTEN/{sum{$6}++}END{for (i in sum) print i,sum[i]}'

相关文章

  • 18-文本处理三剑客之awk

    本章内容 ◆ awk介绍◆ awk基本用法◆ awk变量◆ awk格式化◆ awk操作符◆ awk条件判断◆ aw...

  • 2017 09-04 AWK

    本章主要学习内容awk介绍 awk基本用法 awk变量 awk格式化 awk操作符 awk条件判断 a...

  • 【技术案例】跟老男孩学运维-awk项目案例

    一个awk数组应用案例 [TOC] 0.技术点: awk awk数组 awk判断 awk数组赋值 awk函数spl...

  • awk

    awk:报告生成器,格式化文本输出 内容: awk介绍 awk基本用法 awk变量 awk格式化 awk操作符 a...

  • awk

    Linux System Environment awk功能 awk格式 awk 参数 一、awk截取列 二、显示...

  • 笔记-awk

    1.Awk基础介绍 2.awk语法格式 2.Awk工作原理 3.Awk内部变量 4.Awk格式输出 5.Awk模式...

  • awk用法详解

    awk 用法 awk ' pattern {action} ' 1、awk '/101/' file ...

  • Day64-shell编程_正则表达式_awk

    1.Awk基础介绍 2.Awk工作原理 3.Awk内部变量 4.Awk格式输出 5.Awk模式匹配 5.1符号 ...

  • linux-awk

    linux-awk awk基本结构 awk ‘BEGIN{ print “start”} pattern { co...

  • awk小说

    awk awk脚本的结构基本如下: awk ' BEGIN{ print "start" } patern { c...

网友评论

      本文标题:awk

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