美文网首页
linux命令学习之awk

linux命令学习之awk

作者: caoxinyiyi | 来源:发表于2018-07-02 17:15 被阅读5次

    awk(主要用于域的作用)

    命令行方式
    awk '{pattern + action}' {filenames}
    awk [-F field-separator] 'commands' input-file(s)
    其中,commands 是真正awk命令,[-F域分隔符]是可选的。 input-file(s) 是待处理的文件。
    在awk中,文件的每一行中,由域分隔符分开的每一项称为一个域。通常,在不指名-F域分隔符的情况下,默认的域分隔符是空格。

    简单应用实例如下:

    1、输出第一个域

    [work()@bjdhj-183-67 ~]$  last -n 5 |awk '{print $1}'
    work
    work
    work
    work
    work
    
    wtmp
    

    2、 输出第一域和第三域,中间以tab键隔开

    [work()@bjdhj-183-67 ~]$ last -n 5 |awk '{print $1 "\t" $3}'
    work    tjtx-94-89.58os.
    work    tjtx-94-89.58os.
    work    tjtx-94-89.58os.
    work    tjtx-94-89.58os.
    work    tjtx-94-89.58os.
    
    wtmp    Sat
    

    3、NR显示行号,NF显示有多少个字符

    [work()@bjdhj-183-67 ~]$ last -n 5 |awk '{print $1 "\t lines:" NR $3 "\t colums:" NF }'
    work     lines:1tjtx-94-89.58os.     colums:10
    work     lines:2tjtx-94-89.58os.     colums:10
    work     lines:3tjtx-94-89.58os.     colums:10
    work     lines:4tjtx-94-89.58os.     colums:10
    work     lines:5tjtx-94-89.58os.     colums:10
         lines:6     colums:0
    wtmp     lines:7Sat  colums:7
    

    相关文章

      网友评论

          本文标题:linux命令学习之awk

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