欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

awk3.0 — awk变量

程序员文章站 2022-06-01 14:14:48
...

awk有一些内置变量和外置变量,内置变量就是awk自带的变量,用户可以拿来直接使用,如FS,OFS等
awk常用内置变量如下几种:

FS:输入单词分隔符,默认是空格          
OFS:输出单词分隔符,默认是空格
RS:指定输入时候的换行符(awk是一行行处理数据的) 
ORS:指定输出的符号,替代换行符(awk以换行符区别一条数据) 
NF:一条数据单词的个数,常用来输出最后一个单词  
NR:处理当前文本行的行号    
FNR:各文件分别记录的行号,awk处理多个文件时候,显示多个文件的行号   
FILENAME:当前文件名    
ARGC:命令行参数的个数  
ARGV:数组,保存的是命令行所给定的各参数

内置变量(个别示例)

  1. FNR 同时显示多个文件的当前行的行号
    awk3.0 — awk变量
  2. RS 替换输入换行符
    awk默认是使用换行符,一次读取一条记录,然后再以空格分割单词进行数据处理的,如果我们想要让awk以其他的符号,比如说空格表示换行符,从而让他区别一条记录,就可以使用RS变量
    awk3.0 — awk变量

  3. ORS 替换输出换行符
    有了RS的基础,ORS就很好理解了

  4. ARGV和ARGC
    ARGV表示的是一个数组,数组保存了保存了命令行的参数,数组有些特殊,下标是从0开始,只不过ARGV[0]表示的就是awk

awk 'BEGIN{print ARGV[1]}' test1 test2

自定义变量

方法一:-v xxx=”xxx”
方法二:在program中定义

awk -v test="hello worl" 'BEGIN{print test}'
awk 'BEGIN{test="hello world";print test}'  //中间用分号隔开
相关标签: awk