📜  Unix Linux-Shell内置的数学函数(1)

📅  最后修改于: 2023-12-03 15:05:45.664000             🧑  作者: Mango

Unix/Linux-Shell内置的数学函数

Unix/Linux中内置了许多的数学函数,可以方便地在Shell脚本中进行数学计算。最常用的函数包括:exprbcletawk等等。

expr

expr是Unix/Linux中一种用于Shell计算的工具,可以实现简单的算术运算、字符串匹配等功能。常用到的算术运算符有:+, -, *, /, %等。

例如:

$ expr 2 + 3
5
$ expr 10 - 5
5
$ expr 2 \* 3
6
$ expr 10 / 2
5
$ expr 10 % 3
1

注意:使用*号进行乘法运算必须进行转义,即\*

bc

bc是Unix/Linux中一种用于高精度计算的工具,可以进行比较复杂的数学计算,支持数学函数、逻辑运算等操作。在使用bc进行计算时,必须用echocat等命令将计算表达式传入到bc中,使用quit命令退出。

例如:

$ echo "scale=2; 3.1415926 * 2" | bc
6.28
$ echo "scale=2; sqrt(100)" | bc
10.00

注意:scale用于设置结果的小数位数。

let

let是Unix/Linux中一种用于整数计算的工具,可以进行比较简单的数学计算,只支持整数运算,不支持逻辑运算等操作。

例如:

$ let "a=2+3" 
$ echo $a 
5
$ let "b=2*3" 
$ echo $b 
6
awk

awk是Unix/Linux中一种用于文本处理的工具,可以实现比较复杂的操作,也可以进行简单的数学计算。在使用awk进行数学计算时,必须用$符号引用变量,使用printf输出结果。

例如:

$ awk 'BEGIN {x=2;y=3;printf "%d\n",x+y;}'
5
$ awk 'BEGIN {x=2;y=3;printf "%d\n",x*y;}'
6

注意:BEGIN用于指定执行的操作,在awk中是固定的关键字。每个操作必须使用{}包含,多个操作之间使用;分隔。

以上是Unix/Linux-Shell内置的数学函数的介绍,可以根据需要选择使用。