1、命令简介
bc的英文全拼为“ Binary Calculator ”,是一种支持任意精度的交互执行的计算器语言。bash内置了对整数四则运算的支持,但是并不支持浮点运算,而bc命令可以很方便的进行浮点运算,当然整数运算也可以。
2、命令用法
bc options file...
3、命令描述
BC是一种通过交互式执行语句来支持任意精确数字的语言。它首先按照列出的顺序处理命令行中列出的所有文件中的代码。在处理完所有文件后,bc开始从标准输入中读取。所有代码在读取时执行。
BC通常在shell脚本中使用,使用“here”文档将程序细节传递给BC。
4、命令选项
选项 | 描述 |
--help | 显示帮助 |
-h, --help | 打印用法并退出。 |
file | 包含要执行的计算/函数的文件。这可以通过管道从标准输入。 |
-i, --interactive | 强制交互模式。 |
-l, --mathlib | 定义标准数学库。 |
-w, --warn | 为POSIX bc的扩展提供警告。 |
-s, --standard | 完全处理POSIX bc语言。 |
-q, --quiet | 不要打印正常的GNU bc欢迎符。 |
-v, --version | 打印版本号和版权,然后退出。 |
5、使用示例
1)bc命令它可以执行浮点运算
# echo "1.123*3" | bc 3.369
2)设定小数精度
# echo "scale=3;7/3"|bc
2.333
3)计算平方和平方根
# echo "10^10" | bc 10000000000 # echo "sqrt(100)" | bc 10
6、bc支持的标准函数
函数 | 描述 |
length ( expression ) | 长度函数的值是表达式中有效数字的数量。 |
read ( ) | 不管函数发生在哪里, 从标准输入中读取一个数字。 注意, 这可能会导致标准输入中混合数据和程序的问题。 这个函数的最佳用途 是在先前编写的需要用户输入 但不允许用户输入程序代码的程序中。 |
scale ( expression ) | 表达式中小数点后的位数。 |
sqrt ( expression ) | 表达式中小数点后的位数。 |
++ var | 将变量加1,并将新值设置为表达式的结果。 |
-var ++ | 表达式的结果是变量的值,然后将变量加1。 |
-- var | 将变量减1,并将新值设置为表达式的结果。 |
var -- | 表达式的结果是变量的值,然后该变量减1。 |
( expr ) | 括号改变标准优先级以强制对表达式求值。 |
var = expr | 变量var被赋值为表达式的值。 |
注意:支持大多数标准数学表达式,如+ - / * % ^,关系表达式和布尔操作。