Linux之数值运算:let,(()),[ ]
在Bash shell环境中,可以利用let、(( ))和[]执行基本的算术操作。而在进行高级操作时,
expr和bc这两个工具也会非常有用.
可以用普通的变量赋值方法定义数值,这时,它会被存储为字符串。然而,我们可
以用一些方法使它能像数字一样进行运算
(1) let 命令可以直接执行基本的算术操作。当使用let时,变量名之前不需要再添加$,
例如
[rhx@localhost Test]$ source 1.3.2.sh
[rhx@localhost Test]$ let result=no1+no2
[rhx@localhost Test]$ echo $result
自加,自减,按步长加
[rhx@localhost Test]$ let no1++
[rhx@localhost Test]$ let no1--
[rhx@localhost Test]$ let no1+=6
[rhx@localhost Test]$ let no1-=6
操作符[]的使用方法和let命令类似:
[rhx@localhost Test]$ reslut=$[ no1+no2 ]
在[]中也可以使用$前缀,例如:
[rhx@localhost Test]$ reslut=$[ $no1+5
也可以使用(()),但使用(())时,变量名之前需要加上$:
result=$(( no1 + 50 ))
expr同样可以用于基本算术操作:
result=`expr 3 + 4`
result=$(expr $no1 + 5)
以上这些方法只能用于整数运算,而不支持浮点数。
(2) bc是一个用于数学运算的高级工具,这个精密计算器包含了大量的选项。可以借助它执行浮点数运算并应用一些高级函数:
[rhx@localhost Test]$ echo "4*0.56" | bc
其他参数可以置于要执行的具体操作之前,同时以分号作为定界符,通过stdin传递给bc。
设定小数精度。在下面的例子中,参数scale=2将小数位个数设置为2。因此,
bc将会输出包含两个小数位的数值。
[rhx@localhost Test]$ echo "scale=2;3/8"|bc
进制转换。用bc可以将一种进制系统转换为另一种。来看看如何将十进制转换成二进制,然后再将二进制转换回十进制:
#!/bin/bash
用途:数字转换
[rhx@localhost Test]$ nu=100
[rhx@localhost Test]$ echo "obase=2;$nu"|bc
计算平方以及平方根。
echo "sqrt(100)" | bc #Square root
echo "10^10" | bc #Square
Linux之数值运算:let,(()),[ ]相关推荐
- Linux Bash变量-数值运算与运算符
01.声明变量类型 => declare[+/-][选项]变量名 -:给变量设定类型属性 +:取消变量的类型属性 -i:将变量声明为整数型(integer) -x:将变量声明为环境变量 -p ...
- Linux/unix不同shell环境下数值运算的处理
在阅读本文前,您需要对变量替换.命令替换和数值替换有一点认识. 阅读完本文,您应该获得解决下列问题的信息: 不同shell(bash,csh,ksh)下如何处理数值的运算 常用来数值运算的命令 关于运 ...
- 数值运算 条件测试 、 if选择结构
" "双引 引整体 "a b c" != a b c abc == "abc" 以后最好加"",防止出现错误 '' 单引 ...
- shell编程之数值运算
shell编程是Linux学习中的难点,很多人学了几个月也是不明就里,那么今天我带着大家看一看,shell编程里面的数值运算 Shell 编程中的基本数值运算,这类运算包括: 数值(包括整数和浮点数) ...
- 数值运算python-Python : 数值以及数值运算
数值类型 Python的数值类型包括:整数int,浮点数float和复数.其他的数值类型包括:Decimal和分数Fraction. int:整数不限精度 float:Python里的浮点数使用C语言 ...
- python 数值运算 m op n_python数值运算 四则运算
数值运算 描述 获得用户输入的一个字符串,格式如下: ...
- 数值范围_如何理解PLC对数值运算的定义与处理方式?
戳上方蓝字 "技成电工课堂" 关注我们哦! 所谓数值运算,就是通过加减乘除来实现数值的变换.在PLC中,数值运算的指令不算难,难的是怎样理解PLC对这些数值的定义与处理方式.所以, ...
- 【Python基础】Python 3 Tutorial 专栏第一讲:Python的简单操作、数值运算、字符串、原位操作等...
整理|Vincent 编辑|吴嘤嘤 今天开始,我们正式迈入Python 3 Tutorial 专栏第一讲的学习. 本讲目录: ·你的第一个程序 ·简单操作 ·浮点数 ·其他数值运算 ·字符串 ·简单输 ...
- Hive常用运算(关系运算)、逻辑运算与数学运算、数值运算、日期函数、条件函数、字符串函数
hive 常用运算 第一部分:关系运算 Hive支持的关系运算符 •常见的关系运算符 •等值比较: = •不等值比较: <> •小于比较: < •小于等于比较: <= •大于比 ...
最新文章
- ISME: 北大吴晓磊组发现囊泡为细菌利用环境血红素提供全新途径
- 面向对象编程风格基于对象编程风格
- 十天冲刺---Day8
- IIS相关问题及解决方案
- Linux Shell脚本_禁止定时任务发送邮件
- lintcode 落单的数(位操作)
- TF下载量已超4600万!首届TensorFlow World大会,谷歌大牛Jeff Dean激情演讲
- BestCoder Round #70
- 快速开发jQuery插件的10大技巧(转)
- MagicBookPro-2019-Intel版BIOS降级教程
- 用 Python 爬取网易严选妹子内衣信息,探究妹纸们的偏好
- 计算机网络拓扑结构 教案,计算机网络拓扑结构获奖教案.docx
- Ellisys Bluetooth Sniffer 文档 (EEN-BT09) - 访问链接密钥的方法
- CCF-20180901 卖菜
- 百万光年 ~~正式登陆苹果App Store~~
- LabVIEW开发太阳能测测系统
- 【科普】第二章 SIS 系统简介
- 工程师在创业团队的技术挑战
- Java集合有哪些?
- 青云、UCloud、阿里云、腾讯云等分别都有哪些特点?
热门文章
- 基于DataTables实现根据每个用户动态显示隐藏列,可排序
- 第二阶段冲刺 第六天
- JavaScript常用数组方法
- Django【进阶篇 】
- boostshared_ptr
- AB1601读触摸芯片ASC0106的IIC波形图
- java cloneable 用途_java中cloneable的使用
- C++ Primer 5th笔记(chap 19 特殊工具与技术)type_info 类
- C++ Primer 5th笔记(chap 19 特殊工具与技术)两种不可移植的特性之“位域”
- Html 教程 (4) <head>