码迷,mamicode.com
首页 > 系统相关 > 详细

shell两个数字的运算,一共三个变量

时间:2017-09-20 23:12:28      阅读:224      评论:0      收藏:0      [点我收藏+]

标签:code   $#   log   相加   begin   echo   please   div   rgs   

#!/bin/bash
#两个数运算的简单脚本 22 +  33   ,一共三个参数
echo $#
#对获取的参数以此判断是否包含[a-zA-Z]的东西,如果包含就退出.因为数字相加不是数字就是加减乘除
for i_args in "$@"
do
    echo $i_args
    if [[ ${i_args} =~ [a-zA-Z]+ ]];then
        echo "contain illegal character"
        exit 1
    fi
done 

#判断参数个数是3个,让expr 参数的两个数字相加如果是数字相加,如果正常执行就返回$?=0,否则执行不正常就不是两个数字.

if [ $# == 3 ];then
    a=$1
    c=$2
    b=$3

    expr $a + 2 + $b >/dev/null 2>&1  #让expr 参数的两个数字相加如果是数字相加,如果正常执行就返回$?=0,否则执行不正常就不是两个数字 报错丢空洞
    if [ $? == 0 ]; then
         echo "begin calculation"
                 echo $a $c $b|bc

    else
        
         echo "please input digit"
         exit 1
    fi

elif [ $# -lt 3 ]; then    #少于三个参数
    echo "you are miss args"
    exit
elif [ $# -gt 3 ]; then  #多余三个参数
    echo "you have too many args"
    exit 1
fi

 

shell两个数字的运算,一共三个变量

标签:code   $#   log   相加   begin   echo   please   div   rgs   

原文地址:http://www.cnblogs.com/gaoyuechen/p/7565342.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!