Awk表达式和系统变量



                                        Awk表达式和系统变量

一、awk表达式

 

        一个awk表达式可由数字、字符常量、变量、操作符、函数和正则表达式自由组合而成。


        awk中的变量不需要声明,直接定义赋值即可。变量名不能以数字开头,每个变量有两种类型的值:

 数值和字符串值,变量默认数值为0,默认字符串值为空。示例:

       x = 1;                // = 是赋值符,将x赋值为1

       z = “very” “good”         //空格分隔两个字符串,将z赋值为very(空格)good

      

       awk可进行变量和数字之间的算术操作。以下是awk算术运算符及其意义:

 

                                awk算术运算符及其意义

 

                  运算符

                                                 意义

                   +

                                        

                   -

                                        

                   *

                                        

                   /

                                        

                  %

                                        

                  ^**

                                       乘方

                 ++x

                         返回x值之前,x变量自加

                 x++

                         返回x值之后,x变量自加

 

 

二、awk系统变量

 

     awk定义了许多内建变量用于设置环境信息,谓之系统变量。它们分为两种:用于改变awk默认值,如域分隔符;用于定义系统值,处理文本是可读取它们awk动态改变它们的值,如当前记录数、当前文件名等等。

 

                                          Awk 环境变量及其意义

 

变量名

意义

$n

当前记录的第n个域,域间有FS分隔

$0

记录的所有域

ARGC

命令行参数数量

ARGIND

命令行中当前文件位置(从0开始标号)

ARGV

命令行参数数组

CONVFMT

数字转换格式

ENVIRON

环境变量关联数组

ERRNO

最后一个系统错误的描述

FIELDWIDTHS

字段宽度列表,以空格键分隔

FILENAME

当前文件名

FNR

浏览文件的记录数

FS

字段分隔符,默认为空格键

IGNORECASE

布尔变量,为真,进行忽略大小写的匹配

NF

当前记录中的域数量

NR

当前记录数

OFMT

数字的输出格式

OFS

输出域分隔符,默认为空格键

ORS

输出记录分隔符,默认为换行符

RLENGTH

match函数所匹配的字符串长度

RS

记录分隔符,默认为空格键

RSTART

match函数所匹配的字符串的第一个位置

SUBSEP

数组下标分隔符,默认值\034

 

 本文完全参照           <linux shell 编程从初学到精通>    华清远见嵌入式培训中心  伍之昂等编著

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值