zoukankan      html  css  js  c++  java
  • 第4章 awk编程

    1 awk编程模型

    image

    2 awk用法

    调用awk有三种方法(与sed类似):

    • 在Shell命令行输入命令调用awk,格式为:

    awk [-F 域分隔符] ‘awk程序段’ 输入文件

    • 将awk程序段插入脚本文件后,然后通过awk命令调用它:

    awk -f awk脚本文件输入文件

    • 将awk命令插入脚本文件后,最常用的方法是设置该脚本文件为可执行,然后直接执行该脚本文件,格式为:

    ./awk脚本文件输入文件

    注:第二种方法脚本文件的首行不以#!/bin/awk –f开头;第三种方法脚本文件的首行是#!/bin/awk –f

    3 awk编程示例

    3.1 awk模式匹配

    awk语句由模式(pattern)和动作(action)组成。模式决定动作何时触发和触发事件,动作执行对输入行的处理。

    image

    模式部分:^$,是正则表达式,表示空白行;

    动作部分:花括号中的部分,打印操作。

    3.2 记录和域

    awk认为输入文件是结构化的,awk将每个输入文件行定义为记录,行中的每个字符串定义为,域之间用空格、Tab键或其他符号进行分割,分割域的符号就叫分隔符。

    image

    打印第一、二哥域

    image

    3.3 关系和布尔运算符

    关系运算符

    运算符

    意义

    <

    小于

    >

    大于

    <=

    小于等于

    >=

    大于等于

    ==

    等于

    !=

    不等于

    ~

    匹配正则表达式

    !~

    不匹配正则表达式

    布尔运算符

    运算符

    意义

    ||

    逻辑或

    &&

    逻辑与

    !

    逻辑非

    打印/etc/passwd中第一个域匹配root关键字的记录

    image

    3.4 表达式

    运算符

    意义

    +

    -

    *

    /

    %

    ^或**

    乘方

    ++x

    在返回x值之前,x变量加1

    x++

    在返回x值之后,x变量加1

    3.5 格式化输出

    awk借鉴C语言的语法,定义了printf输出语句,它可以规定输出的格式

    修饰符

    意义

    -

    左对齐

    width

    域的步长

    .prec

    小数点右边的位数

    运算符

    意义

    %c

    ASCII字符

    %d

    整型数

    %e

    浮点数,科学记数法

    %f

    浮点数

    %o

    八进制数

    %s

    字符串

    %x

    十六进制数

    打印第一个域的内容

    image

  • 相关阅读:
    关于上传的种种(一)
    由SharePoint:ChangeContentType想到的
    关于上传的种种(二)
    关于上传的种种(三)
    SharePoint 2013 Suite Bar
    SharePoint 2013 商城
    自定义列表默认的视图文件
    InfoPath表单与SPD无代码工作流(一)
    列表的展示分页
    无处不在的SharePoint按钮(二)
  • 原文地址:https://www.cnblogs.com/boyiliushui/p/5615557.html
Copyright © 2011-2022 走看看