首页 > 其他 > 详细

shell算术运算方法总结

时间:2014-02-13 06:45:50      阅读:338      评论:0      收藏:0      [点我收藏+]

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

微信公众帐号: wirelessqa

bubuko.com,布布扣

关于作者:

作者: 毕小朋 | 老 毕 邮箱: wirelessqa.me@gmail.com

微博: @WirelessQA 博客: http://blog.csdn.net/wirelessqa


shell算术运算方法总结

原文:http://blog.csdn.net/wirelessqa/article/details/19128405

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!