《linux下的计算器:bc用法入门篇》

说起电脑上的计算器,可能所有人的印象都是这样的

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,然后回车。

spacer.gifuploading.4e448015.gif转存失败重新上传取消

 

例子3:进行除法运算

输入4/3,然后回车。

spacer.gifuploading.4e448015.gif转存失败重新上传取消

 

例子4:保留两位小数

4除以3直接被取整了,如果我们想要保留两位小数怎么办?看下面的例子:

这里输入scale=2,即表示保留两位小数。

spacer.gifuploading.4e448015.gif转存失败重新上传取消

 

交互式一般用于我们手工计算表达式,那么对于编程而言,我们该如何善用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

 


猜你喜欢

转载自blog.51cto.com/14900374/2518475