[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=$(( ...
随机推荐
- Beta版——爱阅APP功能说明书
爱阅APP功能说明书 一.引言 通过Alpha发布和一些用户的反馈信息,了解到我们APP存在的问题.针对这些问题我们做了一些修改.以下内容是Beta版的功能说明书. 二.工具 安卓手机 爱阅APP安装 ...
- 跨源资源共享(CORS)概念、实现(用Spring)、起源介绍
本文内容引用自: https://howtodoinjava.com/spring5/webmvc/spring-mvc-cors-configuration/ https://developer.m ...
- 缓慢拒绝服务攻击- slowloris.pl
How use Slowloris Requirements: # sudo apt-get update # sudo apt-get install perl # sudo apt-get i ...
- wikipedia 维基百科 语料 获取 与 提取 处理 by python3.5
英文维基百科 https://dumps.wikimedia.org/enwiki/ 中文维基百科 https://dumps.wikimedia.org/zhwiki/ 全部语言的列表 https: ...
- 使用rpm 打包开发的postgres extension
环境准备 安装依赖包 rpmdevtools rpm-build yum install -y rpm-build rpmdevtools 初始化rpm pacakge 项目 主要是rpm 打包的 ...
- addEventListener以及滑轮滑动事件的应用
addEventListener用于向元素添加事件,而其适用于较新版的IE浏览器(如IE9),对于IE6/7/8来说,应该用attachEvent 下面的代码即为向<img>元素添加事件 ...
- JDK 8 安装及配置
1.配置java环境变量 注意:jdk文件夹名字取名不要用汉语取名. 1)鼠标右键点击我的电脑(计算机)选择属性栏 2)再点击左边高级系统设置 3)点击环境变量 4)在用户变量窗口新建变量名为JAVA ...
- CSS 社区的解决方案,对比
在众多解决方案中,没有绝对的优劣.还是要结合自己的场景来决定. 我们团队在使用过 scss 和 css modules 后,仍然又重新选择了使用 scss.css modules 虽然有效解决了样式冲 ...
- 【转】利用Boost.Python将C++代码封装为Python模块
用Boost.Python将C++代码封装为Python模块 一. 基础篇 借助Boost.Python库可以将C/C++代码方便.快捷地移植到python模块当中,实现对python模块的扩 ...
- c# 状态机实现
c#仿boost statechart的状态机.去年转到unity使用c#,statechart原来的风格蛮爽的,缺点是编译忒慢,在c#则编译根本不是问题. 不一样的地方首先是简单!因为没做一些东西如 ...