• awk入门


    awk入门与基础

      awk不仅仅是linux操作系统中的一个命令,而且是一种编程语言,可以用来处理数据和生成报告(excel) 处理数据可以是一个或多个文件,可以是来自标准输入也可以通过管道符获取标准输入,awk可以在命令行上直接编辑命令惊醒操作也可以编写成awk程序来进行更为复杂的运用。

       指定awk按照什么字符进行文本切割,将源文件切割成以列一列的,如果不指定一下参数,awk默认按照空格进行文本切割,{}中的print代表输出的意思,$代表去列,$1代表取第一列,$2代表取第二列,以此类推,$0代表取全部

    例如:awk ‘{print $1 }’ 文件名

    输入分隔符为 的第一列

    例如:awk -F “:” ‘{print $1}’ 文件名

    awk格式

    awk的条件分为两部分

    模式:内容的查找范围,过滤文件的内容

    动作:将给我们找到的内容切割成以列一列的进行输出

       如果没有动作默认输出全部($0)模式是按行取数据的,动作是按列取数据的

    Awk -F[参数] ‘BEGIN{}模式{动作}END{}’ 文件名

    BEGIN====>开始模块 用来告诉awk数据该如何读

    END  ===>结束模块  用来告诉awk程序如何结束

       NR这个符号其实真正的含义不是行号,而是数据被awk读取一段以后,NR就会记录一次

      由于awk默认以 作为每次读数据的结束标志,因此NR就恰好等于行号了

       假如修改awk默认的读数据的默认换行符,读入换行符可以通过BEGIN模块在awk读取数据之前设定它的读入换行符是谁,默认awk读入换行符和输出换行符都是

       BEGIN{RS=”:”;ORS=”|”} 修改读入换行符

    END=BEGIN{RS=”:”;ORS=”|”} 修改读入和输出换行符

    {print  xxx} 输出 (打印)

    awk四中模式

    正则表达式

    比较表达式

    范围表达式

    模式表达式

    正则表达式

    ~正则匹配操作符

    ~ 取反

    //代表要输入正则

    awk属组

      假如想用一种变量来表示多组数据通常要优先考虑数组的形式

    例如:变量名[数字] =不通知

    for (i  in  h)  i==>变量   in==>从哪取值  

    For===>循环输出  

    Tr 替换命令

    格式  tr “+” “:”   +替换成:

  • 相关阅读:
    0112centos上面l安装卸载mysq
    0111mysql如何选择Join的顺序
    0111MySQL优化的奇技淫巧之STRAIGHT_JOIN
    0108MySQL集群搭建详解(三种结点分离)
    0106主从复制
    0104探究MySQL优化器对索引和JOIN顺序的选择
    MongoDB整理笔记の新增Shard Server
    MongoDB整理笔记の管理Sharding
    MongoDB整理笔记のSharding分片
    MongoDB整理笔记の减少节点
  • 原文地址:https://www.cnblogs.com/weizhimin/p/9882593.html
Copyright © 2020-2023  润新知