zoukankan      html  css  js  c++  java
  • awk 文件截取过滤参数

    功能:

    Awk是一种便于使用且表达能力强的程序设计语言,可应用于各种计算和数据处理任务。AWK是一种处理文本文件的语言,是一个强大的文本分析工具。

    格式:

    awk [POSIX or GNU style options] -f progfile [--] file ...
    Usage: awk [POSIX or GNU style options] [--] 'program' file ...

    $1 代表第几列

    '....{print }' ...的位置可以进行匹配 print 输出

    选项:

    POSIX options: GNU long options: (standard)
    -f progfile --file=progfile
    -F fs --field-separator=fs //分隔符 
    -v var=val --assign=var=val //变量赋值
    Short options: GNU long options: (extensions)
    -b --characters-as-bytes
    -c --traditional
    -C --copyright
    -d[file] --dump-variables[=file]
    -e 'program-text' --source='program-text'
    -E file --exec=file
    -g --gen-pot
    -h --help
    -L [fatal] --lint[=fatal]
    -n --non-decimal-data
    -N --use-lc-numeric
    -O --optimize
    -p[file] --profile[=file]
    -P --posix
    -r --re-interval
    -S --sandbox
    -t --lint-old
    -V --version

    内置参数 

    FS 输入字段分隔符,默认是空格或制表符 // 和-F差不多
    OFS 输出字段分隔符,默认是空格
    RS 输入记录分隔符,默认是换行符
    ORS 输出记录分隔符,默认是换行符
    NF 表示的是浏览记录的域的个数 
    $NF 表示的最后一个Field(列),即输出最后一个字段的内容
    NR 统计记录编号,每处理一行记录,编号就会+1
    FNR 统计记录编号,每处理一行记录,编号也会+1,与NR不同的是,处理第二个文件时,编号会重新计数。
    ARGC 命令行参数数量
    ARGV 命令行参数数组序列数组,下标从0开始,ARGV[0]是awk
    ARGIND 当前正在处理的文件索引值。第一个文件是1,第二个文件是2,以此类推
    ENVIRON 当前系统的环境变量
    FILENAME 输出当前处理的文件名
    IGNORECASE 忽略大小写
    SUBSEP 数组中下标的分隔符,默认为"34"

    实例:

    1.1   awk '{print $}' 输出第几列

     1.2 输出多列用 , 隔开

     1.3 '....{print }' ....位置判断案例

     1.4 -F 分隔符 

    ip a show ens33|awk -F'[ |/]+' 'NR==3{print $3}'  同时定义两个分隔符

     分开写

    1.5 FS 内置参数设置分隔符

     1.6 -v 重新给变量赋值

    1.7 $NF 表示的最后一个Field(列)

     1.8  Sum求和 +=

    1.9  求平均 /

     1.10 SEBIN +if判断 找出最大值

     1.11  for循环 http的并发请求数与其TCP连接状态

     1.12 awk 定义数组

    a[i]=value
    • a:数组的名称
    • i:数组索引
    • value:数组中元素所赋予的

    创建数组 要注意点小红点的地方,

    1.需要加双引号 不然会有语法错误

    2. 输出 用 隔开 也要加 " "

    3.print 打一个就够了 

  • 相关阅读:
    docker入门
    spring aop切面入门
    java 拉姆达 lamdba get
    Spring 3
    Spring 进阶二
    腾讯云 视频 点播 视频上传接口
    js 实时获取后台数据 Spring
    Spring 进阶一
    hibernate 第四天 重点查询的方式
    hibernate 第三天
  • 原文地址:https://www.cnblogs.com/gaiting/p/12165180.html
Copyright © 2011-2022 走看看