前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Shell编程——Shell中的数学运算

Shell编程——Shell中的数学运算

作者头像
felixzhao
发布2018-03-16 17:49:49
7330
发布2018-03-16 17:49:49
举报
文章被收录于专栏:null的专栏null的专栏

在Linux Shell中进行数学运算,通常可以使用的运算符有:

  • 简单运算:
    • let
    • []
    • (())
  • 高级运算:
    • expr
    • bc

1、let命令

let命令是bash内置命令,可以实现简单的算术以及逻辑运算,通过help let命令,可以查询到let命令的具体使用方法。

这里写图片描述
这里写图片描述

使用方法:

代码语言:javascript
复制
#!/bin/sh

i=10
echo $i

let i=i+10 #20
echo $i

let "i=i+100" #120
echo $i

2、[]

[]相当于let命令,其用法如下:

代码语言:javascript
复制
#!/bin/sh

i=10
echo $i

i=$[i+10] #20
echo $i

i=$[i+100] #120
echo $i

3、(())

(())等价于[],其具体用法如下:

代码语言:javascript
复制
#!/bin/sh

i=10
echo $i

i=$((i+10)) #20
echo $i

i=$((i+100)) #120
echo $i

4、expr

expr同样可以用来进行基本的算术运算。

注意:变量与运算符之间必须使用空格作为分隔符。

具体用法如下:

代码语言:javascript
复制
#!/bin/sh

i=10
echo $i

i=`expr $i + 10` #20
echo $i

i=`expr $i + 100` #120
echo $i

若是在变量与运算符之间没有空格,代码如下所示:

代码语言:javascript
复制
#!/bin/sh

i=10
echo $i

i=`expr $i+10` #10+10
echo $i

i=`expr $i+100` #10+10+100
echo $i

最终输出的是:

代码语言:javascript
复制
10
10+10
10+10+100

5、bc

若要在计算的过程中控制计算的精度,就得使用到bc命令。bc命令是一个支持精确的浮点运算的高级计算器,支持数学函数调用。

对于如下的计算:

代码语言:javascript
复制
#!/bin/sh

i=10
echo $i
j=3;
echo $j

m=`expr $i / $j` #3
echo $m

n=`echo "scale=9; $i / $j" | bc` #3.333333333
echo $n        
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、let命令
  • 2、[]
  • 3、(())
  • 4、expr
  • 5、bc
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档