awk

Built-in Numeric Functions

awk有几个内置函数比如:数字,字符串,输入和输出操作。我们在这里讨论其中的一些。

Awk int(n) Function

int()函数给你参数的整数部分。这将产生n的最低整数部分。n是任意数或者浮点数。如果你给一个整数作为参数,该函数返回相同的数字;浮点数,它会截断。

整型函数例子:
$ awk 'BEGIN{print int(3.534); print int(4); print int(-5.223); print int(-5);}'

上面的命令产生下面的输出:

3
4
-5
-5

Awk log(n) Function

log(n)函数提供给定参数n的自然对数。数字n必须是正数,或抛出错误。

Log Function Example:
$ awk 'BEGIN{print log(12);print log(0);print log(1);print log(-1)}'

2.48491
-inf
0
awk: warning: log: received negative argument -1
nan

在上面的输出里面,你可以找出 log(0) 是无穷大的,它显示 -inf, log(-1) 给你一个错误nan (Not a Number).

注意: log(-1)你可能还可以得到以下警告信息: awk: cmd. line:4: warning: log: received negative argument -1

Awk sqrt(n) Function

sqrt函数为给定的整数n给出正平方根。这个函数也需要一个正数,如果你给了负数作为参数,它会返回nan错误。

Sqrt Function Example:
$ awk 'BEGIN{print sqrt(16);print sqrt(0);print sqrt(-12);}'
4
0
awk: warning: sqrt: called with negative argument -12
-nan

Awk exp(n) Function

exp(n)函数返回n的幂。

Exp Function Example:
$ awk 'BEGIN{print exp(123434346); print exp(0); print exp(-12);}'
awk: warning: exp: argument 1.23434e+08 is out of range
inf
1
6.14421e-06

在上面的输出里,exp(123434346),它给你输出无穷大,因为这是超出范围的。

Awk sin(n) Function

sin(n)函数给出n的正弦值,其中n是弧度。

Sine Function Example:
$ awk 'BEGIN{print sin(90); print sin(45);}'
0.893997
0.850904

Awk cos(n) Function

cos(n)函数返回n的余弦值,其中n是弧度。

Cosine Function Example:
$ awk 'BEGIN{print cos(90); print cos(45);}'
-0.448074
0.525322

Awk atan2(m,n) Function

这个函数为你提供了弧度里m/n的反正切。

Atan2 Function Example:
$ awk 'BEGIN{print atan2(30,45)}'
0.588003