shell 之进行数学运算 let expr bc 中括号
2015-09-29 21:35
736 查看
在 bash shell 中 ,使用 let (( )) 和 [ ] 执行基本的算术操作 ,而进行高级操作时 , expr 和 bc 这两个工具也会经常用到。
let
直接上例子
自加操作 和自减操作
简写形式
[ ]
操作符 [ ] 的用法和 let 命令类似
expr
以上方法只支持 证书 运算,不支持 浮点数运算
浮点数运算需要用到 bc
bc 用法范例
设置小数精度
进制转换
let
直接上例子
#!/bin/bash no1=4; no2=5; let result=no1+no2 echo $result
自加操作 和自减操作
#!/bin/bash no1=10; let no1++ echo $no1 let no1-- echo $no1
简写形式
#!/bin/bash no1=10 let no1+=5 echo $no1 let no1-=6 echo $no1
[ ]
操作符 [ ] 的用法和 let 命令类似
#!/bin/bash no1=2 no2=3 result=$[ no1 + no2 ] echo $result #也可以使用 $前缀 result=$[ $no1 + 5 ] echo $result
expr
#!/bin/bash no1=3 no2=4 result=`expr $no1 + $no2` echo $result result=`expr 5 + 10` echo $result result=$(expr $no1 + 5) echo $result
以上方法只支持 证书 运算,不支持 浮点数运算
浮点数运算需要用到 bc
bc 用法范例
#!/bin/bash echo '4 * 0.56' | bc
#!/bin/bash no1=54 result=`echo "$no1 * 1.5" | bc`执行 bc 命令时 可以传入参数 ,参数可以置于要执行的具体操作之前,同时以 分号 ; 作为定界符
设置小数精度
#!/bin/bash echo 'scale=2;3/8' | bc
进制转换
#!/bin/bash no=100 echo "obase=2;$no" | bc no=1111 echo "obase=10;ibase=2;$no" | bc
相关文章推荐
- shell脚本编程-例子_批量添加用户脚本
- PowerShell 对象(Object)
- bash background tasks
- shell——变量自增
- Linux Shell脚本编程--netstat命令
- shell ——grep
- shell基础特性3
- 通过C++和shell脚本去解析URL && c++调用shell脚本后将脚本的内容返回给程序
- 递归的grep
- PowerShell工具脚本---按行数切割大文本文件
- ksh 命令退出状态
- shell 脚本入门基础知识
- shell脚本: linux系统的负载与CPU、内存、硬盘、用户数监控
- Hadoop FS Shell命令
- shell中嵌套使用expect 实例
- Shell重定向&>file、2>&1、1>&2的区别
- linux SHELL下替代sed、ask的常用字符串处理(截取,判断、替换)
- shell时间
- Shell编程中Shift的用法
- Linux下常用的shell命令记录