简要说明:

提示用户输入两个数字;

判断输入的内容是否都为数字;

数字做计算并反馈结果;

计算完毕后询问客户是否继续使用;

给用户提供随时退出的方法。

[root@lb02 scripts]# cat jisuan2.sh

#!/bin/bash


###thank_oldboy

###2016/3/6

###i wish you all the best.

. /etc/init.d/functions


### read number.

function read_number(){

read -p "please enter the number1:" num1

read -p "please enter the number2:" num2

panduan_number

}


### judge $number1 $number2 both are number.

function panduan_number() {

expr $num1 + $num2 &>/dev/null

[ $? -ne 0 ] && {

[[ $num1 == exit || $num2 == exit ]] && {

echo "you had choice leave,bye."

exit 0

} || {

echo "USAGE:you must enter two numbers, or enter exit to leave."

read_number

}

} || judge_number

}


### judge continue or exit.

function continue_or_exit() {

read -p "please enter go to continue or enter out to leave: " str

case "$str" in

go)

read_number

;;

out)

echo "hope to see you again,bye."

exit 0


;;

*)

echo "USAGE:enter go or out:"

continue_or_exit

;;

esac

}


### expr $number1 $number2.

function judge_number() {

[ $num1 -eq $num2 ] && {

echo "$num1 equal $num2."

continue_or_exit

}

[ $num1 -gt $num2 ] && {

echo "$num1 greater than $num2."

continue_or_exit

}

[ $num1 -lt $num2 ] && {

echo "$num1 lower than $num2."

continue_or_exit

}

}



### the gate of the script.

function main() {

read_number

}

main