Shell编程——Shell中的数学运算
在Linux Shell中进行数学运算,通常能够使用的运算符有:
- 简单运算:
- let
- []
- (())
- 高级运算:
- expr
- bc
1、let命令
let命令是bash内置命令。能够实现简单的算术以及逻辑运算。通过help let命令,能够查询到let命令的详细使用方法。
使用方法:
#!/bin/sh
i=10
echo $i
let i=i+10 #20
echo $i
let "i=i+100" #120
echo $i
2、[]
[]相当于let命令,其使用方法例如以下:
#!/bin/sh
i=10
echo $i
i=$[i+10] #20
echo $i
i=$[i+100] #120
echo $i
3、(())
(())等价于[],其详细使用方法例如以下:
#!/bin/sh
i=10
echo $i
i=$((i+10)) #20
echo $i
i=$((i+100)) #120
echo $i
4、expr
expr相同能够用来进行主要的算术运算。
注意:变量与运算符之间必须使用空格作为分隔符。
详细使用方法例如以下:
#!/bin/sh
i=10
echo $i
i=`expr $i + 10` #20
echo $i
i=`expr $i + 100` #120
echo $i
若是在变量与运算符之间没有空格,代码例如以下所看到的:
#!/bin/sh
i=10
echo $i
i=`expr $i+10` #10+10
echo $i
i=`expr $i+100` #10+10+100
echo $i
终于输出的是:
10
10+10
10+10+100
5、bc
若要在计算的过程中控制计算的精度。就得使用到bc命令。bc命令是一个支持精确的浮点运算的高级计算器,支持数学函数调用。
对于例如以下的计算:
#!/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
Shell编程——Shell中的数学运算的更多相关文章
- shell编程:expr的数学运算
运算符两种方式 方式一:expr $num1 operator $num2 方式二:$(($num1 operator $num2)) (方式二在运算符“=”时候会出错) 1+2.sh 这个代码有点问 ...
- shell脚本中的数学运算
shell中的赋值和操作默认都是字符串处理,在此记下shell中进行数学运算的几个特殊方法.以后用到的时候能够来看,呵呵 1.错误方法举例 a) var=1+1 echo $var 输出的结果是1+1 ...
- Unity3D中Mathf数学运算函数总结
引入: 看到一个案例注意到函数Mathf.SmoothDamp的使用,游戏中用于做相机的缓冲跟踪和boss直升机跟踪士兵.该函数是Unity3D中Mathf数学运算函数中的一个.一些游戏使用了smoo ...
- shell中的数学运算
shell中要进行数学运算通常有3中方法: expr命令 比如 expr 1 + 6就会返回7,使用expr的缺点就是碰到乘法运算,或者加括号(因为它们在shell中有其他意义),需要使用转义,比如: ...
- [ SHELL编程 ] shell编程中数值计算方法实例
SHELL编程中经常会涉及到数值计算,有时候对于这些计算命令使用场景容易忘记或者混淆,这里针对常用的命令做个总结.主要包括let.bc.expr.(())等. 1.let 使用格式:let 表达式,表 ...
- linux下数学运算器:expr命令(shell中完成数学运算)
expr用法 expr命令一般用于整数值,但也可用于字符串.一般格式为: expr argument operator argument expr也是一个手工命令行计数器. $expr 10 ...
- [SHELL]shell中的数学运算
一,expr 太麻烦,看的脑壳疼 二,使用方括号 !!!! bash shell用这种方法只支持整数运算,z shell倒是支持浮点型运算 var_1= var_2= var_3= my_var_1 ...
- Shell编程-08-Shell中的循环语句
目录 while语句 until语句 for语句 select语句 循环中断控制 循环语句总结 循环语句常用于重复执行一条命令或一组命令等,直到达到结束条件后,则终止执行.在Shell中常见的 ...
- Shell编程-04-Shell中变量数值计算
目录 算术运算符 算术运算命令 数值运算用法 算术运算符 在任何一门形式的语言中均会存在算术运算的情况,Shell常见的运算符如下所示: 运算符 含义 + - * / % 加 减 乘 除 求余 ...
随机推荐
- iOS知识列表
Xib和StoryBoard,自动布局地图导航,实时公交,第三方地图应用本地推送通知,网络推送通知,真机调试,应用上传绘图,图表,曲线图 Xcode使用技巧多线程,runtime机制编码解码,加密设备 ...
- 蛋疼的SVG外部引用方式
SVG在html页面中有两种引用方式: 1. 内联.就是直接将SVG图形写在html的svg标签中,比如: <html> <head></head> <bod ...
- Redis常见配置redis.conf
redis的配置文件.相信学过SSH或SSM的读者都知道,配置文件的使用在当下开发已十分普遍,希望大家要熟悉习惯这 种开发方式,废话不多说,来开始我们今天的内容吧. 首先得找到 redis 的配置文件 ...
- mybatis如何在控制台打印执行的sql语句
log4j.rootLogger=DEBUG, Console #Console log4j.appender.Console=org.apache.log4j.ConsoleAppender log ...
- Myeclipse 2014 for mac10.9 激活
网上查了N多激活,都无法正确激活.后来慢慢爬文,终于激活了...真艰难啊. 所以怒马一份! 安装myeclipse. 安装完成别急着打开. 在终端里面打开的破解文件jar. java -jar ...
- list或map 打印成json 方便调试
private final Logger logger = Logger.getLogger(this.getClass()); logger.info(JSON.toJSONStringWithDa ...
- Linux上安装使用SSH
參考博客:http://blog.csdn.net/xqhrs232/article/details/50960520 Ubuntu安装使用SSH ubuntu默认并没有安装ssh服务,如果通过ssh ...
- 使用Sharesdk实现第三方平台登录(qq,新浪微博)
首先到sharesdk开放píng台下载demo ,以下要用到的文件来自于 simple里面 第一步:导入官方的jar包 第二步:添加ShareSDK.xml文件并修改相关píng台key 第 ...
- Neo4j 第六篇:Cypher语法
Cypher是图形数据库查询语言事实上的标准. 一,Cypher类型系统 Cypher支持的类型系统分为三类:属性类型,复合类型和结构类型. 1,属性类型 属性类型:Integer.Float.Str ...
- stm32的IIc总线--超声波测距