linux akw中常用的内置计算函数
001、sin 正玄; 直角三角形对边除以斜边;awk的sin函数用于计算正玄,但是单位是弧度;
角度和弧度的转换关系为:角度 * π / 180 = 弧度
如下示例计算30度角和60度角的正玄值:
[root@pc1 test1]# echo | awk '{print sin(30 * 3.1415926 / 180)}' ## 30度正玄值 0.5 [root@pc1 test1]# echo | awk '{print sin(60 * 3.1415926 / 180)}' ## 60度正玄值 0.866025
002、余弦,直角三角形临边除以对边;awk中利用cos计算
[root@pc1 test1]# echo | awk '{print cos(30 * 3.1415926 / 180)}' ## 30度余弦 0.866025 [root@pc1 test1]# echo | awk '{print cos(60 * 3.1415926 / 180)}' ## 60度余弦 0.5
003、取整
[root@pc1 test1]# echo | awk '{print int(434.3243)}' 434 [root@pc1 test1]# echo | awk '{print int(434.8243)}' ## 可以看到直接截断,没有四舍五入 434
004、求e的指数
[root@pc1 test1]# echo | awk '{print exp(1)}' 2.71828 [root@pc1 test1]# echo | awk '{print exp(2)}' 7.38906 [root@pc1 test1]# echo | awk '{print exp(3)}' ## e的三次方 20.0855
005、求以e为低的对数
[root@pc1 test1]# echo | awk '{print log(2.71828)}' 0.999999 [root@pc1 test1]# echo | awk '{print log(7.38906)}' 2 [root@pc1 test1]# echo | awk '{print log(20.0855)}' ## 返回以e为低的对数 3
006、返回x的平方根
[root@pc1 test1]# echo | awk '{print sqrt(4)}' 2 [root@pc1 test1]# echo | awk '{print sqrt(16)}' ## 返回x的平方根 4
。
reference:
01、https://zhuanlan.zhihu.com/p/629706492