zoukankan      html  css  js  c++  java
  • awk学习点滴

    1,常量

    ARGC:命令行参数个数

        包括awk本身命令,但awk的自带option不算在内。

    ARGV:命令行参数数组

        ARGV[0]是awk本身,其他依次提取就好。  

    $ awk -F ' ' 'BEGIN {print ARGC, ARGV[0]}' a b c d
    5 awk

    域:表示一个记录里面的内容。

    FS:域输入分割符,默认是空格,可以用-F指定

    OFS:域输出分割符,

    $ echo "one,two,three,four" | awk -F "," '{OFS="...";print $1,$2,$3}'
    one...two...three

    $ echo "one,two,three,four" | awk -F "," '{OFS="...";print $1$2$3}'
    onetwothree

    $ echo "one,two,three,four" | awk -F "," '{print $1,$2,$3}'
    one two three

    记录:一个输出里面的内容

    RS:记录输入分隔符

    ORS:记录输出分隔符

    $ ls -la | awk 'ORS=".."{print $1}'
    total..drwxr-xr-x..drwxr-xr-x+..

    NF:当前记录中域数

    $ echo "one two three four" | awk '{print NF}'
    4

    NR:当前为止记录数

    FNS:当前文件中记录数

    $ awk '{print $1, NR, FNR}' a b
    a 1 1
    b 2 2
    c 3 3
     4 4
    e 5 1
    f 6 2
    g 7 3
     8 4

    你可以认为F代表域,就一条记录内的内容,R代表记录,O代表输出。

  • 相关阅读:
    New Skateboard
    Mike and strings
    C语言异或运算在程序设计中的妙用
    快速排序
    贪心算法
    快速排序过程分析
    深度搜索C语言伪代码
    matlab 中“newff” 函数的参数设置
    一维小波分解与去噪重构
    matlab绘图(详细)(全面)
  • 原文地址:https://www.cnblogs.com/silencExplode/p/3783960.html
Copyright © 2011-2022 走看看