zoukankan      html  css  js  c++  java
  • awk--简述

    摘要

    AWK is a programming language designed for text processing and typically used as a data extraction and reporting tool.

    AWK是一种设计用于文本处理的编程语言,通常用作数据提取和报告工具。

    awk程序是有一个或多个模式-动作语句构成的.

    如:

    awk ‘pattern {action} pattern {action}..’input

    在一些语句中,pattern可以被省略

    如:

    awk ‘{print }’input //输出input

    还有一些语句,action也可以被省略

    如:

    awk ‘//’input //输出input

    awk处理流程是:

    • 读取输入的一行
    • 检查符合的模式(省略模式的默认符合)执行相应的动作

    ps:$0,$1,$2...的含义

    $0表示当前的整个记录数据
    $1表示被分隔符(FS)分隔后记录的第1个字段
    $2 表示被分隔符(FS)分隔后记录的第2个字段

    以此类推.

    关于awk的更多信息请移步:https://en.wikipedia.org/wiki/AWK

    程序的书写格式规定

    模式–动作 语句, 以及动作内的语句通常用换行符分隔, 但是若干条语句也可以出现在同一行, 只要
    它们之间用分号分开即可. 一个分号可以放在任何语句的末尾.
    动作的左花括号必须与它的模式在同一行; 而剩下的部分, 包括右花括号, 则可以出现在下面几行.
    空行会被忽略; 它们可以插入在语句之前或之后, 用来提高程序的可读性. 空格与制表符可以出现在
    运算符与操作数的周围, 同样也是为了提高可读性.

    如:

    {print $1,$3}

    等价于{print

                   $1,$3}

    {

          print

          $1,$3}这样的书写方式是不行的

     

    约定

    以下约定仅适用于下文:

    (1)输入文件countries

    USSR 8649 275 Asia
    Canada 3852 25 North America
    China 3705 1032 Asia
    USA 3615 237 North America
    Brazil 3286 134 South America
    India 1267 746 Asia
    Mexico 762 78 North America
    France 211 55 Europe
    Japan 144 120 Asia
    Germany 96 61 Europe
    England 94 56 Europe

    (2)输入文件worker.txt

    1||Jack||25||man||Chinese,FuJian
    2||Lip||30||man||American

    (3)输入文件empty.txt

    空文件

    参考

    祝:玩得愉快!
  • 相关阅读:
    不高级不能发帖的WPS论坛
    打不开盖子的酸奶
    无意中发现的一个好设计:不浸水的香皂盒
    几件小事
    解决ios微信页面回退不刷新
    require.js
    前端遇到的坑
    gulp详细入门教程
    js 获取当前日期
    模仿微信朋友圈 图片浏览 h5 html5 js
  • 原文地址:https://www.cnblogs.com/hejianglin/p/6082623.html
Copyright © 2011-2022 走看看