6.5 Shell 算术计算
6.5 Shell Arithmetic
shell允许在其内计算表达式,可以通过以下方式使用:((中,let和带-i选项的declare命令中。
只能计算固定长度的整数,而且不会检查溢出,除0可以捕获到且标记为错误。 操作符、优先级、结合性及其值完全同c语言中一样。下面的操作符按优先级分组,优先级按从第到高排列:
id++ id-- 变量后+1,和后-1
++id --id 变量先+1,和先-1
- + 一元减号和加号
! ~ 逻辑非,按位非
** 幂
* / % 乘号,除号,求余数
+ - 加号,减号
<< >> 左移位,右移位
<= >= < > 比较
== != 相等,不等
& 按位与
^ 按位异或
| 按位或
&& 逻辑与
|| 逻辑或
expr ? expr : expr 条件操作符
= *= /= %= += -= <<= >>= &= ^= |= 赋值
expr1 , expr2 逗号表达式
shell变量允许作操作数;参数扩展会在表达式被计算前进行。表达式里的shell变量可以直接使用变量名,而不必按shell变量的引用语法来用。也就是说,shell变量名在表达式里前面不必跟$。 A shell variable that is null or unset evaluates to 0 when referenced by name without using the parameter expansion syntax.
6.5 Shell 算术计算的更多相关文章
- echo $[1 + 2] shell中 $[] 在bash中同$(()),用于算术计算
shell脚本编写:echo $[ 11#8+1] 输出结果是几,为什么,怎么算来的? 摘自:https://zhidao.baidu.com/question/334766451.html 结 ...
- 关于LEA指令(单周期就可以做简单的算术计算)
堆栈种分配的局部变量所谓的“标号”,你以为是什么?(都是那些该死的宏惹的祸,大家要都是老老实实写代码,就不会有这些疑问了). 比如你用local在栈上定义了一个局部变量LocalVar,你知 ...
- shell脚本,通过一个shell程序计算n的阶乘。
[root@localhost ~]# cat jiechen.sh #!/bin/bash #设计一个shell程序计算n的阶乘,要求: #.从命令行接收参数n; #.在程序开始后立即判断n的合法性 ...
- shell脚本计算Linux网卡流量
本文介绍了计算linux网卡流量的一个shell脚本,一个通过固定间隔时间获取ifconfig eth0 的字节值而计算出网卡流量的方法,有需要的朋友参考下. 使用shell脚本计算Linux网卡流量 ...
- shell 数学计算
每次都找不到一个好的方法来执行shell中的变量计算. 前段时间忘了在哪发现一个好的方法.在此记录下来. 申请变量: value=0; 变量加减: value=$[$value+1] 变量乘除: va ...
- Shell——数学计算
shell中的赋值和操作默认都是字符串处理,在此记下shell中进行数学运算的几个特殊方法,以后用到的时候可以来看,呵呵1.错误方法举例 a) var=1+1 echo $var 输出的结果是1+1, ...
- shell 算术运算符
算术运算符 下表列出了常用的算术运算符,假定变量 a 为 10,变量 b 为 20: 运算符 说明 举例 + 加法 `expr $a + $b` 结果为 30. - 减法 `expr $a - $b` ...
- (转)linux shell 数字计算详解
代码中免不了要进行各种数据计算.抛开科学计算不提,普通的计算占地,百分比,同比,环比等需求就很常见.linux shell中进行数字计算,主要有如下几种方式: 1.bc bc是比较常用的linux计算 ...
- shell基本计算、逻辑运算、位运算详解
转:http://blog.chinaunix.net/uid-8504518-id-3918531.html Shell 提供大量的基本运算操作,在脚本中非常有用.Shell 对您提供的算术表达式求 ...
随机推荐
- IPSec
一. +IPSec(IP Security)Internet 协议安全性 是IFTF制定的为保证在Internet上传送数据的安全保密性能的框架协议 +IPSec包括报文验证头协议AH(协议号51)和 ...
- sys.modules[__name__]的一个实例
关于sys.modules[__name__]的用法,百度上阅读量比较多得一个帖子是:https://www.cnblogs.com/robinunix/p/8523601.html 对于里面提到的基 ...
- fragment--的生命周期
官网帮助文档链接: http://developer.Android.com/guide/components/fragments.html 主要看两张图,和跑代码 1,Fragment的生命周: 2 ...
- header头参数不能带下划线
header头参数不能带下划线:game_id是错误的
- MySQL之 Mysqldump导出数据库
参数大全 参数说明 --all-databases , -A 导出全部数据库. mysqldump -uroot -p --all-databases --all-tablespaces , -Y 导 ...
- PyCharm的模板设置
在File—settings—Editor—File and Code Templates—Python script 脚本里添加 编辑内容 (a)shebang行 #!/usr/bin/python ...
- 字符串格式化format使用
顺序传参 '{}....{}'.format(value1, value2) 索引传参 '{0}....{1}'.format(value1, value2) 关键字传参 '{k1}....{k2}' ...
- 第16课 右值引用(3)_std::forward与完美转发
1. std::forward原型 template <typename T> T&& forward(typename std::remove_reference< ...
- C#语言经典例题
两个例题分别用了两种不同的写入方式 一个是有Console.Write(); 一个没有,两种都可以 标准体重 男士体重 = 身高 - 100 +-3 kg cm 女士体重 = 身高 - 110 +-3 ...
- KafkaAPI实战
新旧API使用 Flume和Kafka集成: Kafka有两套API: 过时的API 和新API 准备工作 <dependencies> <dependency> <gr ...