shell中的浮点数运算之bc命令简介
在shell中,当我们进行浮点数的运算,特别是用于浮点数间的比较大小时,往往会出现一些问题,这里使用bc命令,帮你解决困难
它的一般格式:
var=`echo "option1;option2;...;expression"|bc`
其中options部分一般设置精度scale,和变量赋值,expression部分是计算表达式,最后将它们放在反引号中赋值给变量
例子如下:
lk@ubuntu:~$ y=`echo "scale=2;x=5;x*x"|bc`
lk@ubuntu:~$ echo $y
25
lk@ubuntu:~$
lk@ubuntu:~$ echo "5 < 8 "|bc
1
lk@ubuntu:~$ echo "5 < 8 "|bc
0
lk@ubuntu:~$
在shell脚本的分支语句中使用bc比较浮点数大小:
#!/bin/bash
num=100
if [ $(echo "${num} > 1000.95"|bc) -eq 1 ]; thenecho ${num}
elseecho no
fi
(上面脚本中使用到的-eq是一个运算符,表示判断是否相等;前面bc命令的返回值是0或1,则之后用-eq进行判断)
在linux中可以通过bc命令进行非常强大计算,功能强大难以想象,它也是Linux中的计算器,这里仅做简单的介绍
shell中的浮点数运算之bc命令简介相关推荐
- shell中实现浮点数运算
linux下的浮点数运算shell实现浮点数运算 awk实现浮点数运算 bc实现浮点数运算 awk实现浮点数运算 AWK 是一种处理文本文件的语言,是一个强大的文本分析工具. 主要部分 awk '{p ...
- linux shell数学计算器,技术|使用 GNU bc 在 Linux Shell 中进行数学运算
在 shell 中使用 bc 更好地做算数,它是一种用于高级计算的数学语言. 大多数 POSIX 系统带有 GNU bc,这是一种任意精度的数字处理语言.它的语法类似于 C,但是它也支持交互式执行语句 ...
- linux中bc用法英文,使用GNU bc在Linux Shell中进行数学运算
在 shell 中使用 bc 更好地做算数,它是一种用于高级计算的数学语言. 大多数 POSIX 系统带有 GNU bc,这是一种任意精度的数字处理语言.它的语法类似于 C,但是它也支持交互式执行语句 ...
- shell中的算数运算
shell中的算数运算 首先这里所说的算术运算是指加法(+), 减法(-),乘法(*),整除(/), 求余(%)四种运算,可以通过添加括号改变优先级,并且只能对整数进行运算(Linux Bash Sh ...
- shell中的数学运算
一.shell中支持的算术 算术运算符 说明/含义 +.- 加法(或正号).减法(或负号) *./.% 乘法.除法.取余(取模) ** 幂运算 ++.– 自增和自减,可以放在变量的前面也可以放在变量的 ...
- linux shell中小数的运算
对于在Shell中进行小数数字的计算,其实方法有很多,但是常用的方法都有其弱点: 1.bc bc应该是最常用的Linux中计算器了,简单方便,支持浮点. root@localhost:~# echo ...
- Python中关于浮点数运算的不确定尾数的解释
一.浮点数类型 与数学中实数概念一致,带有小数点及小数的数字.浮点数取值范围和小数精度都存在限制,但常规计算可忽略. 取值范围数量级约-10308到10308,精度数量级10-16. 二.浮点数运算的 ...
- python减法精确度不准是什么问题,聊聊Python中的浮点数运算不准确问题
大家好,老 Amy 来了.之前就意识到一个问题,但是最近又有朋友提出来了,所以就想着干脆记录下来,分享给大家叭~ 啥问题呢?请看题: 也就是说,需要大家计算1.1-1的值,很多朋友会说:"e ...
- shell中使用case以及shift处理命令行参数
shell或bash使用case与shift处理多个命令行参数 1. shift命令 在bash中定义了9个位置变量,分别使用$1,$2,-$9,借助 shift 命令可以访问多于9个的命令行参数. ...
最新文章
- R语言如何画个性化词云图
- C语言经典例68-数组元素循环偏移
- leetcode - 416. 分割等和子集
- 4022-基于链表的简单选择排序(C++,附思路)
- H3C交换机4核心节点IRF2虚拟化下检测机制
- IDEA太慢,喵喵要气死了
- 如何创建linux 脚本,如何创建和执行shell脚本
- 基于keras实现双向GRU的中文情感分析
- cf手游服务器连接中断,CF手游服务器连接失败怎么回事 无法连接服务器
- 免费隐私保护国外域名注册商namecheap教程
- Android开发详解之App升级程序一点通
- NBU常用命令简单汇总(二)
- 正则表达式 匹配美元等多种货币符号的超简单方法
- 小米4电信4G_2014716_官方线刷包_救砖包_解账户锁
- JS教程()js弹出小窗口(没有浏览器窗口地址栏,工具栏,菜单栏,显示栏,只有关闭和最小化按钮)
- sketch如何做设计稿交互_设计师用Sketch做设计稿时是用1倍图还是用2倍图做
- Python入门程序【六】
- AutoCAD、3D-Tool与电子相关的使用
- 计算机组装大赛的新闻稿,重庆科创职业学院开展“科创IT杯”计算机技能竞赛(新闻稿)...
- FIO测试硬盘性能参数和实例详细总结(附源码)