shell中变量自增的计算方法
来源:互联网 发布:箭牌官方旗舰店 知乎 编辑:程序博客网 时间:2024/05/16 06:56
1. 运用 expr
# expr 10 + 10 ===> 20# a=`expr 10 % 3`; echo $a ===> 1 注意:·· 为esc键盘下的
# b=10; b=`expr $b + 1` ===> 11 (实现了变量的自增1)
2. 运用 $[]
# echo $[ 10 + 10 ] ===> 20
# a=$[ 10 % 1]; echo a ===> 1
# b=10; b=$[ $b + 1 ];echo b ===> 11 (实现了变量的自增1)
变量的自增操作还可以这样实现:
# c=100
# let c+=1 ===> 101
[] 表达式 [root@localhost ~]# [ 1 -eq 1 ] && echo 'ok' ok [root@localhost ~]# [ 2 < 1 ] && echo 'ok' -bash: 2: No such file or directory [root@localhost ~]# [ 2 \< 1 ] && echo 'ok' [root@localhost ~]# [ 2 -gt 1 -a 3 -lt 4 ] && echo 'ok' ok [root@localhost ~]# [ 2 -gt 1 && 3 -lt 4 ] && echo 'ok' -bash: [: missing `]' 注意:在[] 表达式中,常见的>,<需要加转义字符,表示字符串大小比较,以acill码 位置作为比较。 不直接支持<>运算符,还有逻辑运算符|| && 它需要用-a[and] –o[or]表示
[[]] 表达式 [root@localhost ~]# [ 1 -eq 1 ] && echo 'ok' ok[root@localhost ~]$ [[ 2 < 3 ]] && echo 'ok'ok[root@localhost ~]$ [[ 2 < 3 && 4 > 5 ]] && echo 'ok'ok<span style="color:#808000;">注意:[[]] 运算符只是[]运算符的扩充。能够支持<,>符号运算不需要转义符,它还是以字符串比较大小。里面支持逻辑运算符:|| && </span>
expr
求表达式变量的值。 保证 参数与运算符号中间有空格隔开
也可以使用 $(()) 将表达式放在括号中,即可达到运算的功能。
let
let 是 bash 内建的整数运算
双括号用法 语法: ((表达式1,表达式2…)) 特点: 1、在双括号结构中,所有表达式可以像c语言一样,如:a++,b--等。 2、在双括号结构中,所有变量可以不加入:“$”符号前缀。 3、双括号可以进行逻辑运算,四则运算 4、双括号结构 扩展了for,while,if条件测试运算 5、支持多个表达式运算,各个表达式之间用“,”分开
例子:a=1;b=2;c=3; ((a=a+1));echo $a; a=$((a+1,b++,c++));echo $a,$b,$c结果23,3,4双括号结构之间支持多个表达式,然后加减乘除等c语言常用运算符都支持。如果双括号带:$,将获得表达式值,赋值给左边变量。
有了双括号运算符:[[ ]], [ ],,以及let,expr 都可以抛到一边了。
0 0
- shell中变量自增的计算方法
- shell中如何设置自增的变量
- shell中变量自增的实现方法
- shell中变量自增的实现方法
- shell中变量自增的实现方法
- Bash Shell中变量自增的实现方法
- shell中变量自增的实现方法
- shell中变量自增的实现方法
- shell中变量自增的实现方法 ----待更新
- shell脚本中整数型变量自增(加1)的实现方式
- 变量溢出的计算方法
- shell 脚本中字符的自增
- linux Shell编程中常用的数学计算方法
- SHELL中特殊的变量
- shell 中变量的定义
- shell变量中 && ||的用法
- shell 中变量的定义
- shell 中变量的介绍
- 实现:TextView自由复制功能
- eclipse打包apk时提示the zipalign tool was not found in the sdk解决方法
- 文件上传与下载(一)struts2
- Volley网络请求框架
- Apache 日志文件简述
- shell中变量自增的计算方法
- 以时间为基准进行求解
- 解决ios项目问题的资料
- PopupWindow的使用
- something about jquery
- thinkphp excel 数据导出excel(自用备份)
- MAC 开启root权限
- 2015-6-4遇到BUG(BUG记录)
- js mouseover连续触发