[Shell]Bash变量:数值运算及运算符
-------------------------------------------------------------------------------------------------
Shell中的变量的类型默认都是字符串,所以:
#!/bin/bash aa=
bb=
cc=$aa+$bb echo $cc # +
数值运算的方式:
declare声明变量的类型:
declare [+/-] [选项] 变量名
选项:
- :给变量设定类型属性
+ :取消变量的类型属性
-i :将变量声明为整数型(int)
-x :将变量声明为环境变量
-p :显示指定变量的被声明的类型
aa=
bb=
cc=$aa+$bb declare -p aa # declare -- aa="" export aa declare -p aa # declare -x aa="" , declare具有了-x属性 declare -i cc=$aa+$bb # 将cc声明为数值型 echo $cc #
方法1(declare):
declare -i cc=$aa+$bb
方法2(expr或let数值运算工具):
dd=$(expr $aa + $bb) # dd的值是aa和bb的和,+ 号左右两边必须有空格才有效
方法3:
$((运算式)) 或 $[运算式] # 如果用单小括号,代表是包含的是系统命令
echo $(( $aa+$bb ))
运算符有:赋值运算符,数值运算符,逻辑运算符.
echo $(( aa=1 )) # 1
echo $(( 3*(6%4) )) # 6
echo $(( 1 && 0 )) # 0
Link:http://www.cnblogs.com/farwish/p/4772110.html
[Shell]Bash变量:数值运算及运算符的更多相关文章
- shell基础:数值运算与运算符
linux的shell中,变量的类型默认都是字符串型. export将aa声明为环境变量.也可用declare声明.其实就是改变了-x属性 $(()) 最常用.
- Shell基础(二):Shell中的数值运算、条件测试操作、使用if选择结构
一.Shell中的数值运算 目标: 本案例要求熟悉Linux Shell环境的特点,主要练习以下操作: 1> 使用expr.$[ ].let等整数运算工具:定义变量X=1234,然后计算X与78 ...
- shell脚本基础 数值运算 判断 及if语句
数值运算 整数运算[三种,随便掌握一种即可]expr 数字 运算符 数字 [root@ceshiji ~]# expr 1 + 1(运算符号都是+ - * / 注:*需要\*.%是取余,余数只有0 1 ...
- [Shell]Bash变量:自定义变量 & 环境变量 & 位置参数变量 & 预定义变量
--------------------------------------------------------------------------------- 变量是计算机内存的单元,其中存放的值 ...
- shell数值运算与运算符
- shell中的数值运算
By francis_hao Oct 2,2017 本文摘录自bash的man手册. 算数运算相关的形式 形式 含义 ((expression)) expression按照下面描述的算术 ...
- [Shell]Bash变量:环境变量的配置文件和登录信息
----------------------------------------------------------------------------------------- 只有把环境变量放入配 ...
- [Shell]Bash变量:变量测试与内容替换
--------------------------------------------------------------------------------------------- 变量测试是通 ...
- Shell/Bash 变量/variable 循环/loop
如何在bash脚本里面进行循环 #!/bin/bash n=9999 for(( i =1; i<=100;i++)) do /root/testProgram $n sleep 5 n=$(( ...
随机推荐
- GoogLeNet 改进之 Inception-v2/v3 解读
博主在前一篇博客中介绍了GoogLeNet 之 Inception-v1 解读中的结构和思想.Inception的计算成本也远低于VGGNet.然而,Inception架构的复杂性使得更难以对网络进行 ...
- 学c++需要先学c语言吗?
看你的需求,如果是底层开发,就必须学习C语言.如果只是应用开发,可以直接从C++开始学习.实际上这两个语言是平等的,只是在语法上C++尽量与C兼容,但仍然有很多不同的地方. 1) C++不是C的超集. ...
- SuSE Linux Enterprise Server - 软件包下载地址
官方地址: https://software.opensuse.org
- Python全栈之路----常用模块----time模块
time 模块的方法 time.time():返回当前时间的时间戳. >>> import time >>> time.time() #从1974年到现在过去了多少 ...
- macbook hive安装
1 原材料 1.1 已经安装好的伪分布式hadoop,版本2.8.3(参见链接https://www.cnblogs.com/wooluwalker/p/9128859.html) 1.2 apach ...
- 第三章 JQuery: HelloWorld--常见方法--css--选择器--筛选器--属性--效果--事件--数组操作--字符串操作--对象转换
1.jQuery简介 为了简化JavaScript 的开发, 一些JavsScript 库诞生了. JavaScript库封装了很多预定义的对象和实用函数.能帮助使用者建立有高难度交互的页面, 并且兼 ...
- java实验四《Android程序设计》实验报告
一.实验报告封面 课程:Java程序设计 班级:1653班 姓名:张士洋 学号:20165308 指导教师:娄嘉鹏 实验日期:2018年5月14日 实验时间:13:45 - 15:25 实验序号:08 ...
- lua qt測試成功
用luabind寫了一個qt的簡單binding 測試成功
- [转]使用python爬取东方财富网机构调研数据
最近有一个需求,需要爬取东方财富网的机构调研数据.数据所在的网页地址为: 机构调研 网页如下所示: 可见数据共有8464页,此处不能直接使用scrapy爬虫进行爬取,因为点击下一页时,浏览器只是发起了 ...
- 全面理解Java内存模型(JMM)及volatile关键字
[版权申明]未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) http://blog.csdn.net/javazejian/article/details/72772461 出自[zejian ...