shell兩個數字的運算,一共三個變量


#!/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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM