Shell学习——数值运算
在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学习——数值运算的更多相关文章
- shell简单用法笔记(shell中数值运算)二
shell中变量值,如果不手动指定类型,默认都是字符串类型: 例如: a= b= c=$a+#b echo $c 结果会输出:123+456 shell中,如果要进行数值运算,可以通过一下方法: 方法 ...
- shell之数值运算
Shell中声明变量默认是字符串, 要参与数值运算,可使用下面方式,简单,表示以数值方式.
- Linux学习 - 数值运算
1 declare 声明变量类型 declare [+/-] [选项] 变量名 - 给变量设定类型属性 + 取消变量的类型属性 -i 将变量声明为整数型 -x 将变量声明为环境变量(同export) ...
- 【Linux_Shell 脚本编程学习笔记六、shell的数值运算】
1.bc 命令的用法(可以整数也可以小数): bc是 UNIX下的计算器,它也可以用在命令行下面: 例: 给自变量 i 加 1 [root@docker Demo_test]# i= [root@do ...
- [Shell]Bash变量:数值运算及运算符
------------------------------------------------------------------------------------------------- Sh ...
- shell 数值运算
declare数值运算 linux默认变量类型为字符串 declare [+/-] [选项] 变量名 '-' 给变量设定类型属性 '+' 取消变量的类型属性 '-a' 将变量声明为数组型 '-i' 将 ...
- LinuxShell脚本编程基础2-变量与数值运算、父shell和子shell
1.变量和数值运算 Shell脚本的变量不需要声明的 对变量赋值有两种方式, 直接用“=” 或者用键盘输入值 #!/bin/bash name1="Jack" echo $name ...
- shell中的数值运算
By francis_hao Oct 2,2017 本文摘录自bash的man手册. 算数运算相关的形式 形式 含义 ((expression)) expression按照下面描述的算术 ...
- Shell基础(二):Shell中的数值运算、条件测试操作、使用if选择结构
一.Shell中的数值运算 目标: 本案例要求熟悉Linux Shell环境的特点,主要练习以下操作: 1> 使用expr.$[ ].let等整数运算工具:定义变量X=1234,然后计算X与78 ...
随机推荐
- Day4上午
expect100+50+50, In fact 100+10+0. 代码能力还有待提高,部分分应该能拿的.结果...力不从心啊. T1 贪心做的不知对不对. 看来思路是对的,不知道能不能对. 暴力做 ...
- ASP.NET MVC扩展自定义视图引擎支持多模板&动态换肤skins机制
ASP.NET mvc的razor视图引擎是一个非常好的.NET MVC框架内置的视图引擎.一般情况我们使用.NET MVC框架为我们提供的这个Razor视图引擎就足够了.但是有时我们想在我们的项目支 ...
- gulp 无损压缩图片
在做项目中,美工有时候会给一些比较大的图片,在做网站的时候,图片太大会影响加载速度.因此,我们需要无损压缩图片. 在尝试过几个压缩图片的方法,发现gulp中的gulp-tinypng-nokey插件是 ...
- python面试题——爬虫相关
1.接触过几种爬虫模块 urllib.requests这两种爬虫模块. 2.robots协议是什么? 它就是一个防君子不防小人的协议,网站有一些数据不想被爬虫程序爬取,可以编写robots协议文件,明 ...
- 对MVVM思想的在认识
如果说MVP是对MVC的进一步改进,那么MVVM则是思想的完全变革.它是将“数据模型数据双向绑定”的思想作为核心,因此在View和Model之间没有联系,通过ViewModel进行交互,而且Model ...
- DOM 事件冒泡
1.什么是事件冒泡? 事件冒泡就是从具体到不具体, 例如:当你给了一个button按钮一个点击事件,再给他的父级相同的事件,就会按照,button,body,document,window,继续向上冒 ...
- Dynamics CRM 4.0升级Dynamics CRM 2013后全局Ribbon的修改
最近在为一个客户在Dynamics CRM 4.0到Dynamics CRM 2013的升级,升级之后发现原来在Dynamics CRM 4.0中定义的全局Ribbon按钮像牛皮癣一样,在每个实体页面 ...
- C++ Knowledge series STL & Const
Thank to the pepole who devote theirself to the common libs. STL(http://www.cplusplus.com/reference/ ...
- Unable to copy a file from obj\Debug to bin\Debug
1. Exit the VS2012, and then re-open the solution. 2. Clean the solution and build.
- Xposed截获 Android手机QQ密码
0x00 前言 Xposed框架是一款修改系统框架服务的软件,通过它许多功能强大的模块得以实现,且不冲突地同时运作,自从Xposed框架发布以来,安卓手机的可玩性日益激增,最近很闲很蛋疼,研究下截获A ...