说起电脑上的计算器,可能所有人的印象都是这样的:
windows的计算器有界面当然很酷,但是如果我们在黑黑的linux下面该怎么办呢?
不用急,在linux下面也有一款非常棒的计算器:bc。bc是一款linux下的一款小工具,我们在linux下输入:man bc,看一下简单的介绍:
bc居然是一款任意精度的计算器“语言”,看来bc真的很强大。那我们开始安装下bc工具吧。
一、安装
centos
yum -y install bc
ubuntu
apt install bc
例子1:输入bc,默认进入交互式
如果我们要退出,就输入quit,然后回车
例子2:我们算一个小学生的1+1等于2的问题
输入1+1,然后回车。
例子3:进行除法运算
输入4/3,然后回车。
例子4:保留两位小数
4除以3直接被取整了,如果我们想要保留两位小数怎么办?看下面的例子:
这里输入scale=2,即表示保留两位小数。
交互式一般用于我们手工计算表达式,那么对于编程而言,我们该如何善用bc呢?
三、bc与shell脚本
shell脚本的执行都是非交互式的,即执行完全是自动在跑的,无须交互过程。此种场景下,一般有两种方式使用bc:
1. 通过管道使用 bc
如果你想要直接计算一个表达式,可以这么写:
echo "expression" | bc
expression就是计算的数学表达式,比如上面例子中的1+1,4/3,当然,这里也可以使用shell变量,如下是几个小例子:
例子1:
#计算1+2的结果echo "1+2" | bc
例子2:
#计算4/3,保留两位小数的结果echo "scale=2;4/3" | bc
例子3:
#使用shell变量,例子中输出5a=3;b=2;echo "$a+$b" | bc
2. 通过shell赋值变量
我们也可以把结果赋值给一个变量
var=$(echo "expression" | bc)
这样var就可以直接保存计算后的结果
例子4:
#获取计算结果,并赋值给varvar=$("scale=2;4/3" | bc)#打印变量的值echo $var
说起电脑上的计算器,可能所有人的印象都是这样的:
windows的计算器有界面当然很酷,但是如果我们在黑黑的linux下面该怎么办呢?
不用急,在linux下面也有一款非常棒的计算器:bc。bc是一款linux下的一款小工具,我们在linux下输入:man bc,看一下简单的介绍:
bc居然是一款任意精度的计算器“语言”,看来bc真的很强大。那我们开始安装下bc工具吧。
一、安装
centos
yum -y install bc
ubuntu
apt install bc
二、交互式
例子1:输入bc,默认进入交互式
如果我们要退出,就输入quit,然后回车
例子2:我们算一个小学生的1+1等于2的问题
输入1+1,然后回车。
例子3:进行除法运算
输入4/3,然后回车。
例子4:保留两位小数
4除以3直接被取整了,如果我们想要保留两位小数怎么办?看下面的例子:
这里输入scale=2,即表示保留两位小数。
交互式一般用于我们手工计算表达式,那么对于编程而言,我们该如何善用bc呢?
三、bc与shell脚本
shell脚本的执行都是非交互式的,即执行完全是自动在跑的,无须交互过程。此种场景下,一般有两种方式使用bc:
1. 通过管道使用 bc
如果你想要直接计算一个表达式,可以这么写:
echo "expression" | bc
expression就是计算的数学表达式,比如上面例子中的1+1,4/3,当然,这里也可以使用shell变量,如下是几个小例子:
例子1:
#计算1+2的结果 echo "1+2" | bc
例子2:
#计算4/3,保留两位小数的结果 echo "scale=2;4/3" | bc
例子3:
#使用shell变量,例子中输出5 a=3;b=2;echo "$a+$b" | bc
2. 通过shell赋值变量
我们也可以把结果赋值给一个变量
var=$(echo "expression" | bc)
这样var就可以直接保存计算后的结果
例子4:
#获取计算结果,并赋值给var var=$("scale=2;4/3" | bc) #打印变量的值 echo $var
快送门:各种学习资料与大厂招聘
博主:测试生财(一个不为996而996的测开码农)
座右铭:专注测试开发与自动化运维,努力读书思考写作,为内卷的人生奠定财务自由。
内容范畴:技术提升,职场杂谈,事业发展,阅读写作,投资理财,健康人生。
csdn:https://blog.csdn.net/ccgshigao
博客园:https://www.cnblogs.com/qa-freeroad/
51cto:https://blog.51cto.com/14900374
微信公众号:测试生财(定期分享独家内容和资源)