1. 基本使用:
$ bc <<< 5*4 20 $ bc <<< 5+4 9 $ bc <<< 5-4 1或者
也能够把算式写到文件中面。然后一次计算。$ cat calcFile 5+5 6+7 $ bc < calcFile 10 13也能够使用HERE 命令:
$ bc << HERE > 1+4 > 4-1 > 2*4 > HERE 5 3 8
能够使用内置的变量 last 引用上一次的结果:
last 也能够用 点号取代:
2. 浮点数运算:能够使用scale指定小数点之后的位数(默觉得0,即整数)
有时候得不到指定的位数:
此时,能够改动为:
3. 数制转换:
能够使用变量 ibase表示转换前数字的数制;obase表示转换后数字的数制
$ echo 'obase=16;128' | bc 80$ echo 'ibase=16;obase=A;80' | bc 128$ echo 'obase=2;128' | bc 10000000$ echo 'ibase=2;obase=A;10000000' | bc 128$ echo "obase=10;ibase=16;80" | bc 1284. 指数运算:
记得第一个指数运算的结果要加入括号。5. 基于函数库的运算
bc支持下面函数:
s(x): 正弦函数(x为弧度)
c(x): 余弦函数(x为弧度)
a(x): 反正切函数(结果为弧度)
l(x): 自然对数函数
e(x): 以e为底的指数函数
j(n,x): 贝赛尔函数
此时。bc要加上 -l 參数 (此时。 scale 为20)
计算 log1.5(2) (以 1.5为底,2的对数):
也能够用 awk命令:6. 脚本函数编程:
$ cat calc_prog print "Enter a number A\n"; a = read() print "Enter another number B\n"; b = read() if (b == a) { print "B = A\n"; } if (a < b) { print "B > A\n"; } if (a > b) { print "B < A\n"; }$ bc -l calc_prog
7. 脚本模拟计算器:$ cat calc.sh #!/bin/bash bc << END scale=2 $@ END$ ./test.sh 1+2 3參考:
http://mylinuxbook.com/linux-command-line-calculator-bc-examples/
版权声明:本文博客原创文章,博客,未经同意,不得转载。