zoukankan      html  css  js  c++  java
  • linux基础学习-18.3-awk执行过程

    在深入了解awk前,我们需要知道awk如何处理文件的。

    1、文件的创建

    [root@oldboy ~]# mkdir /server/files/ -p
    [root@oldboy ~]# head /etc/passwd > /server/files/awkfile.txt
    [root@oldboy ~]# cat /server/files/awkfile.txt 
    root:x:0:0:root:/root:/bin/bash
    bin:x:1:1:bin:/bin:/sbin/nologin
    daemon:x:2:2:daemon:/sbin:/sbin/nologin
    adm:x:3:4:adm:/var/adm:/sbin/nologin
    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
    sync:x:5:0:sync:/sbin:/bin/sync
    shutdown: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
    uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
    

    这个文件仅包含十行文件,我们使用下面的命令:

    2、awk执行过程演示

    [root@oldboy ~]# awk 'NR>=2{print $0}' /server/files/awkfile.txt 
    bin:x:1:1:bin:/bin:/sbin/nologin
    daemon:x:2:2:daemon:/sbin:/sbin/nologin
    adm:x:3:4:adm:/var/adm:/sbin/nologin
    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
    sync:x:5:0:sync:/sbin:/bin/sync
    shutdown: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
    uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
    

    命令说明:

    条件NR>=2,表示行号大于等于2时候,执行{print $0}显示整行。

    awk是通过一行一行的处理文件,这条命令中包含模式部分(条件)和动作部分(动作),awk将处理模式(条件)指定的行

    3、小结awk执行过程

    1)awk读入第一行内容

    2)判断是否符合模式中的条件NR>=2

    a,如果匹配则执行对应的动作{print $0}

    b,如果不匹配条件,继续读取下一行

    3)继续读取下一行

    4)重复过程1-3,直到读取到最后一行(EOF:end of file)

    练习题:

    详细说出awk的执行过程

  • 相关阅读:
    jenkins实现git自动拉取代码时替换配置文件
    【一些小常识】Linux文件目录的通配符用法/*
    mysql使用——sql实现随机取一条数据
    jmeter使用问题——数据库无法连接
    【测试点】微信小程序的常见测试点
    分位数介绍
    elk开源版本支持的功能
    kali下的webshell工具-Weevely
    kali中的webshell工具--webacoo
    sql报错注入:extractvalue、updatexml报错原理
  • 原文地址:https://www.cnblogs.com/Klanti/p/9143647.html
Copyright © 2011-2022 走看看