Shell脚本笔记(三)shell中的数学计算
shell中的数学计算
一、使用方括号
#!/bin/bash a=10 b=29 c=88res=$[$a * ($c-$b)] echo $res
二、使用(())
echo $((1+9)) ((i=1+2)) b=$((9-2*2))echo $((a+=1)) echo $((a**2)) #计算a的平方 echo $((8<9)) #输出1 echo $((i++)) echo $((RANDOM%61)) #产生一个不大于60的随机数
三、bc的用法
bc技术器实际上是一种编程语言,它可以识别:
数字(整数和浮点数)
变量(简单变量和数组)
注释(以#或C语言中的/* */开始的行)
表达式
编程语句(例如if-then语句)
函数
浮点运算是由内建变量scale控制的。必须将这个值设置为你希望在计算结果中保留的小数
位数,否则无法得到期望的结果。
$ bc -q 3.44 / 5 0 scale=4 3.44 / 5 .6880 quit $
bc还能支持变量:
$ bc -q var1=10 var1 * 4 40 var2 = var1 / 5 print var2 2 quit $
脚本中使用bc:
方式一:
variable=$(echo "options; expression" | bc)
实例:
#!/bin/bash var1=$(echo "scale=4; 3.44 / 5" | bc) echo The answer is $var1
方式二,使用内联输入,格式:
variable=$(bc << EOF
options
statements
expressions
EOF
)
var1=10.46 var2=43.67 var3=33.2 var4=71 var5=$(bc << EOF scale = 4 a1 = ( $var1 * $var2) b1 = ($var3 * $var4) a1 + b1 EOF )
三、Shell中产生随机数的方法
1)通过系统变量RANDOM
#范围:0~3267,因此用于加密时加密性不太好 echo $RANDOM
2)通过openssl产生随机字符串
openssl rand -base64 8
3)通过date产生
date +%s%N
4)通过/dev/urandom配合chksum
head /dev/urandom|cksum
四、常见用法
expr $a + 1 &> /dev/null #判断是否为数字的方法 RA=$? expr $b + 2 &> /dev/null RB=$? if [ $RA -ne 0 -o $RB -ne 0 ];thenecho 'one of the input is not num!!!!'exit 1 fi
转载于:https://www.cnblogs.com/Shadowplay/p/8310290.html
Shell脚本笔记(三)shell中的数学计算相关推荐
- linux exec 脚本之家,详解Shell脚本中调用另一个Shell脚本的三种方式
主要以下有几种方式: Command Explanation fork 新开一个子 Shell 执行,子 Shell 可以从父 Shell 继承环境变量,但是子 Shell 中的环境变量不会带回给父 ...
- linux查询日志中页面返回状态码,[linux shell] Shell脚本实现apache日志中的状态码分析...
这篇文章主要介绍了Shell脚本实现apache日志中的状态码分析,本文先是介绍了按天切割日志的方法,然后给出了分析访问状态码的脚本,需要的朋友可以参考下 一.首先将apache日志按天切割 复制代码 ...
- ios重签名shell脚本_iOS逆向——shell重签名及代码注入
感谢hank老师 上一章我们讲了应用签名原理和重签名原理,不再赘述,没有看过的同学可以点这里-- 这章概述shell脚本重签名.可能有的同学认为有很多工具都能快速的帮助我们重签名实现需求,但我更希望在 ...
- 【跟晓月学shell脚本】掌握shell脚本变量原理及概念
前言 跟晓月一起学shell,死磕shell脚本,让shell脚本学习不再难. 想学习更多shell脚本的案例,可以前往我的师父的shell脚本专栏:shell脚本从入门到实战-案例篇 文章目录 前言 ...
- php shell脚本怎么写,Shell脚本编程入门
一.什么是Shell脚本 示例 看个例子吧: #!/bin/sh cd ~ mkdir shell_tut cd shell_tut for ((i=0; i<10; i++)); do tou ...
- 【跟晓月学shell脚本】掌握shell脚本变量实战案例
前言 上篇文章我们探讨了shell脚本变量的基本原理和概念,本篇我们基于上面的内容增加一些实战. 如果你还没有学习shell脚本的变量理论,可以点击链接:[跟晓月学shell脚本]掌握shell脚本变 ...
- R开发(part2)--R语言中的数学计算
学习笔记,仅供参考,有错必纠 参考自:<R的极客理想>-- 张丹 文章目录 R开发 R语言中的数学计算 对数 加权平均.连乘.差分.秩.任意数.全体数 阶乘.组合.排列 累加.累乘.最小累 ...
- 用计算机怎么计算r角度,R语言中的数学计算
原标题:R语言中的数学计算 前言 R是作为统计语言,生来就对数学有良好的支持,一个函数就能实现一种数学计算,所以用R语言做数学计算题特别方便.如果计算器中能嵌入R的计算函数,那么绝对是一种高科技产品. ...
- R语言中的数学计算(转载)
R语言中的数学计算 关于作者: 张丹(Conan), 程序员Java,R,PHP,Javascript weibo:@Conan_Z blog: http://blog.fens.me email: ...
最新文章
- 运营商助力新型智慧城市建设
- css和js实现3d图片,JavaScript_纯JS实现旋转图片3D展示效果,CSS:style type=text/cssgt - phpStudy...
- Blockchain区块链架构设计之四:Fabric多通道和下一代账本设计
- Fiddler之Autoresponder替换(Web)
- 阿里技术官最新总结一份105道Java面试题小册,看完我惊呆了
- 开源开放 | 开源大学在线实践数据集及知识图谱MOOPer(CCKS2021)
- 2复数与复变函数(二)
- python数字求和为什么得不出结果_WPS表格求和问题,只出公式不出结果数字
- CSDN浏览器助手插件[少了很多糟心的广告]
- JAVA编程思想课程视频
- 【正点原子STM32连载】 第三十三章 光敏传感器实验 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1
- xp系统计算机远程桌面连接不上,在XP系统中远程桌面连接不上的解决方式
- Oracle EBS 后台提交请求集 FND_SUBMIT.SUBMIT_PROGRAM
- 单元格中公式结果为0如何不显示0符号?
- 为什么我要选择使用Yarn来做Docker的调度引擎
- C语言中的指针以及二级指针
- Python3-标准库概览
- html5页面发送短信验证码,H5实现APP“输入短信验证码”效果
- 如何读jdk源码以及查找linux本地方法,例如DefaultSelectorProvider
- 2018年11月16日SQL Server实验内容(触发器实验)