shell算术运算方法总结

shell算术运算方法总结.sh
#! bin/bash
# -------------------------------------------------------------------------------
# 文件名:  shell算术运算方法总结.sh
# 版 本:   1.0
# 创建日期: 2014/02/11
# 描 述:   算术运算是指加法(+), 减法(-),乘法(*),整除(/), 求余(%)四种运算,可以通过添加括号改变优先级
# 作 者:   毕小朋
# 邮 箱:   wirelessqa.me@gmail.com
# 博 客:   http://blog.csdn.net/wirelessqa
# -------------------------------------------------------------------------------


function use_let()
{
    echo "=================== 使用let命令进行算术运算 =================== "
    echo ""
    echo "# 注意:等号右边以及运算符和括号的两边都不能有空格"
    echo ""

    let result=4+2  
    echo "let result=4+2 #加 <- $result"

    let result=4-2
    echo "let result=4-2 #减 <- $result"

    let result=4*2
    echo "let result=4*2 #乘 <- $result"

    let result=4/2
    echo "let result=4/2 #除 <- $result"

    let result=4%2
    echo "let result=4%2 #求余 <- $result"

    let result=(4-2)*2
    echo "let result=(4-2)*2 #改变优先级 <- $result"   
    echo ""
}

function use_expr()
{
    echo "=================== 使用expr命令进行算术运算 =================== "
    echo ""
    echo "# 注意:"
    echo "# 1.乘号(*), 左括号( ( ) , 右括号( ) )必须使用反斜杠(\)转义。"
    echo "# 2.expr右边以及运算符和括号的两边必须有空格; 如果采用紧凑的写法(紧凑格式可以不对*, (, )进行转义), 则返回算术表达式."
    echo ""

    result=`expr 4 + 2`
    echo "\`expr 4 + 2 \` #加 <- $result"

    result=`expr 4 - 2`
    echo "\`expr 4 - 2 \` #减 <- $result"

    result=`expr 4 \* 2`
    echo "\`expr 4 \* 2 \` #乘 <- $result"

    result=`expr 4 / 2`
    echo "\`expr 4 / 2 \` #除 <- $result"

    result=`expr 4 % 2`
    echo "\`expr 4 % 2 \` #求余 <- $result"

    result=`expr \( 4 - 2 \) \* 2`
    echo "\`expr \( 4 - 2 \) \* 2\` #改优先级 <- $result" 

    echo ""
}

function use_brackets()
{
    echo "=================== (( ... ))进行算术运算 ==================="
    echo ""
    echo "注意:这种写法无需对运算符和括号做转义处理,也可以采用松散或紧凑的格式."
    echo ""
    result=$((4+2))
    echo "result=\$((4+2)) #加 <- $result"

    result=$((4-2))
    echo "result=\$((4-2)) #减 <- $result"

    result=$((4*2))
    echo "result=\$((4*2)) #乘 <- $result"

    result=$((4/2))
    echo "result=\$((4/2)) #除 <- $result"

    result=$(( 4 % 2 ))
    echo "result=\$(( 4 % 2 )) #求余 <- $result"

    result=$(( ( 4 - 2 ) * 2 ))
    echo "result=\$(( ( 4 - 2 ) * 2 )) #加 <- $result"


    echo ""
}

use_let
use_expr
use_brackets

运行结果:
bixiaopeng@bixiaopengtekiMacBook-Pro Shell备忘录$ bash shell算术运算方法总结.sh
=================== 使用let命令进行算术运算 ===================

# 注意:等号右边以及运算符和括号的两边都不能有空格

let result=4+2 #加 <- 6
let result=4-2 #减 <- 2
let result=4*2 #乘 <- 8
let result=4/2 #除 <- 2
let result=4%2 #求余 <- 0
let result=(4-2)*2 #改变优先级 <- 4

=================== 使用expr命令进行算术运算 ===================

# 注意:
# 1.乘号(*), 左括号( ( ) , 右括号( ) )必须使用反斜杠(\)转义。
# 2.expr右边以及运算符和括号的两边必须有空格; 如果采用紧凑的写法(紧凑格式可以不对*, (, )进行转义), 则返回算术表达式.

`expr 4 + 2 ` #加 <- 6
`expr 4 - 2 ` #减 <- 2
`expr 4 \* 2 ` #乘 <- 8
`expr 4 / 2 ` #除 <- 2
`expr 4 % 2 ` #求余 <- 0
`expr \( 4 - 2 \) \* 2` #改优先级 <- 4

=================== (( ... ))进行算术运算 ===================

注意:这种写法无需对运算符和括号做转义处理,也可以采用松散或紧凑的格式.

result=$((4+2)) #加 <- 6
result=$((4-2)) #减 <- 2
result=$((4*2)) #乘 <- 8
result=$((4/2)) #除 <- 2
result=$(( 4 % 2 )) #求余 <- 0
result=$(( ( 4 - 2 ) * 2 )) #加 <- 4


转自: http://blog.csdn.net/wirelessqa/article/details/19128405


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值