【Linux学习笔记】31:数值运算的方法
来源:互联网 发布:海岛奇兵 科技升级数据 编辑:程序博客网 时间:2024/05/23 00:57
上节的declare命令其实就可以进行数值运算,只要在要做数值运算的的结果变量前面加declare -i就可以。但这种方式不算方便,本节学期其它的方式进行数值运算。
[1]expr数值运算工具
*算数运算
[root@bogon ~]# aa=11[root@bogon ~]# bb=22[root@bogon ~]# cc=$(expr $aa + $bb)[root@bogon ~]# echo $cc33
*求字符串长度
[root@bogon ~]# aa="1234567"[root@bogon ~]# declare -i cc=$(expr length $aa)[root@bogon ~]# echo $cc7
*取子串(下标从1开始)
[root@bogon ~]# aa="1234567"[root@bogon ~]# cc=$(expr substr $aa 3 5)[root@bogon ~]# echo $cc34567[root@bogon ~]# cc=$(expr substr $aa 3 2)[root@bogon ~]# echo $cc34
注意expr表达式中运算符两边必须有空格。
[2]let数值运算工具
*算数运算
[root@bogon ~]# aa=11[root@bogon ~]# bb=22[root@bogon ~]# let cc=${aa}+${bb}[root@bogon ~]# echo $cc33
let和expr都不支持对小数的运算,expr还能支持对字符串的某些操作,对于整形数值运算,let的速度一般优于expr。
[3]数值运算的其它方法
*dollar双小括号(推荐)
$((运算式))
如:
[root@bogon ~]# aa=11[root@bogon ~]# bb=22[root@bogon ~]# cc=$(($aa+$bb))[root@bogon ~]# echo $cc33
*dollar中括号(不推荐)
$[运算式]
如:
[root@bogon ~]# aa=11[root@bogon ~]# bb=22[root@bogon ~]# cc=$[$aa+$bb][root@bogon ~]# echo $cc33
后面学习条件测试语句用的就是中括号,所以推荐使用双小括号做数值运算更便于阅读。
[4]Bash运算符优先级表
阅读全文
0 0
- 【Linux学习笔记】31:数值运算的方法
- shell的数值运算方法
- Linux学习之数值运算与运算符
- shell编程数值运算的方法
- cobol学习之六数值的运算
- 数值运算方法
- linux shell 数值运算
- Linux数值运算
- Linux Shell 数值运算
- linux bash数值运算
- SQL查询的艺术学习笔记--连接符数值运算函数
- python 学习笔记 -- 字符串、数值及运算符
- bash的数值运算
- ECMAScript6-学习笔记(数值的扩展)
- ES6 学习笔记之《数值的扩展》
- Linux学习笔记:bash的算术运算及条件测试
- 数值逼近学习笔记
- 数值计算学习笔记
- 信息管理与信息系统专业的来龙去脉——基于六所大学个案的分析(转)
- Comparable与Comparator
- 查找旋转数组的最小值-- 二分查找
- HDU -- 5700 区间交 【思维 + 线段树】
- spring注入对象类型属性
- 【Linux学习笔记】31:数值运算的方法
- 读书笔记:SQL必知必会 【第13-15课】
- 第三方登陆与分享
- HDU6188-Duizi and Shunzi
- Unity_2D游戏屏幕适配问题_081
- POJ
- 汇编语言基础
- 网站通知栏信息滚动
- ROS [ERROR]