• AWK的内置变量


    ARGC: number (2) 在命令行提供的参数的个数,不包括命令awk
    ARGIND: number (0) 当前文件中正在处理的 ARGV 数组的索引值。 文件的位置,从1开始计数.一个文件处在1号位.第2个文件处在2号位.
    ARGV: array, 2 elements 存储命令行输入参数的数组,如:["awk","{print}","1","2"]
    BINMODE: number (0)
    CONVFMT: string ("%.6g") 数据转换为字符串的格式
    ENVIRON: 与环境变量相关的关联数组变量, ENVIRON["USER"]
    ERRNO: number (0) 存储当 getline 重定向失败或者 close 函数调用失败时的失败信息
    FIELDWIDTHS: string ("") 表示一个分割域之间的空格的宽度。当此变量被设置后, GAWK 将输入的域之间的宽度处理为固定宽度,而不是使用 FS 的值作为域间的分割符。
    FILENAME: string ("") 当前文件名称,只能应用在结束块,在开始块中FILENAME未定义.
    FNR: number (0) 该变量与 NR 类似,不过它是相对于当前文件而言的。此变量在处理多个文件输入时有重要的作用。每当从新的文件中读入时 FNR 都会被重新设置为 0。 当前文件的第几行,切换文件时,从1开始从新计数.
    FS: string (" ") 输入的数据域之间的分隔符,其默认值是空格。 你可以使用 -F 命令行选项改变它的默认值
    IGNORECASE: number (0) 当此变量被设置后,GAWK将变得大小写不敏感。awk 'BEGIN{IGNORECASE=1} /amit/' marks.txt
    LINT: number (0)
    NF: number (0) 当前输入记录中域的数量。当前行有多少列.从1开始计数.当新行输入时,清零.
    NR: number (0) 当前记录的数量.当前行是第几行.从1开始计数
    OFMT: string ("%.6g") 数值<<输出>>的格式
    OFS: string (" ") <<输出>>域之间的分割符,其默认为空格
    ORS: string (" ") <<输出>>记录(行)之间的分割符,其默认值是换行符
    PROCINFO 这是一个关联数组变量,它保存了进程相关的信息。比如, 真正的和有效的 UID 值,进程 ID 值等等awk 'BEGIN { print PROCINFO["pid"] }'
    RLENGTH: number (0) 表示 match 函数匹配的字符串长度。AWK 的 match 函数用于在输入的字符串中搜索指定字符串.awk 'BEGIN { if (match("One Two Three", "re")) { print RLENGTH } }'
    RS: string (" ") 输入记录的分割符,其默认值为换行符。
    RSTART: number (0) 表示由 match 函数匹配的字符串的第一个字符的位置。awk 'BEGIN { if (match("One Two Three", "Thre")) { print RSTART } }'
    RT: string ("")
    SUBSEP: string ("34") 数组下标的分割行符,其默认值为 34 。
    TEXTDOMAIN: string ("messages")

    $0 表示整个输入记录。当前整行文字字符串.
    $n 表示当前输入记录的第 n 个域,这些域之间由 FS 分割。 当前行的第n段.

  • 相关阅读:
    metadata
    java.net.SocketException: Permission denied 连网权限
    JUnit4 测试
    web生成工具
    Linux scp 两台服务器传输文件
    eclipse 无法导入项目
    html 流动字幕 marquee 标签 jquery
    libSVM 简易入门
    程序员创业指导书
    svm(libsvm)在文本分类中的应用
  • 原文地址:https://www.cnblogs.com/keystone/p/12987339.html
Copyright © 2020-2023  润新知