在Bash shell中,可以利用let、(( ))、[]执行基本的算术操作,在高级操作时,使用expr和bc两个工具
1、let
[root@client02 ~]# no1=4
[root@client02 ~]# no2=5
[root@client02 ~]# let result=no1+no2
[root@client02 ~]# echo $result
9
[root@client02 ~]# let no1++
[root@client02 ~]# echo $no1
5
[root@client02 ~]# let no1+=3
[root@client02 ~]# echo $no1
8
[root@client02 ~]#
2、[]方法
[root@client02 ~]# reslut=$[ no1 + no2 ]
[root@client02 ~]# echo $reslut
13
[root@client02 ~]# reslut=$[ no1 + 2 ]
[root@client02 ~]# echo $reslut
10
[root@client02 ~]#
3、(())方法
[root@client02 ~]# result=$((no1 + 6))
[root@client02 ~]# echo $no1
[root@client02 ~]# 1
1
[root@client02 ~]# echo $result
7
[root@client02 ~]#
4、expr方法
[root@client02 ~]# result=`expr 3 + 4`
[root@client02 ~]# echo $result
7
[root@client02 ~]# result=`expr $no1 + 4`
[root@client02 ~]# echo $result
5
[root@client02 ~]#
5、bc可以执行浮点操作以及一些高级函数,通过stdin传递给bc,其他参数可以置于要执行的具体操作之前,同时以分号作为界定符
[root@client02 ~]# echo "4.5*3" | bc
13.5
[root@client02 ~]# no=2
[root@client02 ~]# result=`echo "$no * 3.3" | bc`
[root@client02 ~]# echo $result
6.6
[root@client02 ~]#
设置小数精度
[root@client02 ~]# echo "scale=2;8/3" | bc
2.66
[root@client02 ~]#
进制转换
[root@client02 ~]# no=100
[root@client02 ~]# echo "obase=2;$no"|bc
1100100
[root@client02 ~]# no=10001010
[root@client02 ~]# echo "obase=10;ibase=2;$no"|bc
138
[root@client02 ~]# no=123AB
[root@client02 ~]# echo "obase=10;ibase=16;$no"|bc
74667
[root@client02 ~]#
计算平方和平方根
[root@client02 ~]# echo "sqrt(100)"|bc
10
[root@client02 ~]# echo "3^3"|bc
27
[root@client02 ~]#

Shell学习——数值运算的更多相关文章

  1. shell简单用法笔记(shell中数值运算)二

    shell中变量值,如果不手动指定类型,默认都是字符串类型: 例如: a= b= c=$a+#b echo $c 结果会输出:123+456 shell中,如果要进行数值运算,可以通过一下方法: 方法 ...

  2. shell之数值运算

    Shell中声明变量默认是字符串, 要参与数值运算,可使用下面方式,简单,表示以数值方式.

  3. Linux学习 - 数值运算

    1 declare 声明变量类型 declare [+/-] [选项] 变量名 - 给变量设定类型属性 + 取消变量的类型属性 -i 将变量声明为整数型 -x 将变量声明为环境变量(同export) ...

  4. 【Linux_Shell 脚本编程学习笔记六、shell的数值运算】

    1.bc 命令的用法(可以整数也可以小数): bc是 UNIX下的计算器,它也可以用在命令行下面: 例: 给自变量 i 加 1 [root@docker Demo_test]# i= [root@do ...

  5. [Shell]Bash变量:数值运算及运算符

    ------------------------------------------------------------------------------------------------- Sh ...

  6. shell 数值运算

    declare数值运算 linux默认变量类型为字符串 declare [+/-] [选项] 变量名 '-' 给变量设定类型属性 '+' 取消变量的类型属性 '-a' 将变量声明为数组型 '-i' 将 ...

  7. LinuxShell脚本编程基础2-变量与数值运算、父shell和子shell

    1.变量和数值运算 Shell脚本的变量不需要声明的 对变量赋值有两种方式, 直接用“=” 或者用键盘输入值 #!/bin/bash name1="Jack" echo $name ...

  8. shell中的数值运算

    By francis_hao    Oct 2,2017   本文摘录自bash的man手册.   算数运算相关的形式 形式 含义 ((expression)) expression按照下面描述的算术 ...

  9. Shell基础(二):Shell中的数值运算、条件测试操作、使用if选择结构

    一.Shell中的数值运算 目标: 本案例要求熟悉Linux Shell环境的特点,主要练习以下操作: 1> 使用expr.$[ ].let等整数运算工具:定义变量X=1234,然后计算X与78 ...

随机推荐

  1. 三、oracle 表空间

    SQL> --清除屏幕信息 SQL> clear screen SQL> --查看表空间 SQL> select * from v$tablespace; SQL> -- ...

  2. Tiled 地图编辑器使用教程-官方demo

    一.Tiled Map Editer 下载地址 http://www.mapeditor.org/download.html 二.官方教程查看 下载安装后,不管windows还是Mac系统都包含官方例 ...

  3. Active Directory 域服务对象

    局域网计算机控制中心 可以在DC上控制所有局域网资源(计算机 .用户.设备) 大中型企业管理必备. 最后,它还可以让开发人员集成LDAP身份认证,使用域账号登录应用. 也就是说,此企业的所有系统,都可 ...

  4. ArrayList、Vector、HashMap、HashSet

    1. list  和 set 的有序无序是否可重复 List是有序可重复的: Set是无序不可重复的: 2.ArrayList.Vector.HashMap.HashSet的默认初始容量.加载因子.扩 ...

  5. 微信小程序电商实战-入门篇

    小程序开发工具有新版本更新啦!开发体验更好了,详情可以查看微信公众平台-小程序https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/devtools.h ...

  6. SublimeText插件 : sass语法高亮

    安装 :sublime中安装sass插件和sass build插件  就可以高亮显示sass 步骤:安装 sass插件和sass build (安装过程不细说) 步骤2:打开.sass文件,进行以下设 ...

  7. Oracle数据表比较记录差异(转)

    liuyx_know|七级 你可以参照一下Oracle的UNION [ALL], INTERSECT, MINUS操作符,至于你的问题你可以使用MINUS操作符,语句如下: SELECT * FROM ...

  8. 进一步了解this和super

    知乎上看到一问题很好,拿了与大家分享,原地址:https://www.zhihu.com/question/31548104. 问: JAVA 中this 和super与覆写冲突的问题? 实例一: 输 ...

  9. JavaScript 编写随机四位数验证码(大小写字母和数字)

    1.JavaScript编写随机四位数验证码,用到的知识点为: a.Math对象的随机数:Math.random() b.Math对象的取整    :Math.floor() c.处理所需要的下标个数 ...

  10. 深入了解MongoDB

    一.介绍: 数据库分为关系型数据库和非关系型数据库 关系型数据库是建立在关系模型上的数据库,主要的有Oracle MySQL Microsoft SQL Server NoSQL是非关系型数据存储的广 ...