functiondb1(){
read -p "Enter a value:" value
echo"Doubling the value";
return $[ $value * 2 ];
}
functiondb2(){
read -p "Enter a value:" value
echo $[ $value * 2 ]
}
db1
echo"The new value is $?"
result=`db2`; #函数返回值赋值给resultecho"The new value is $result";
function addem(){
if (( $# == 0 )) || (( $# > 2 ))
thenecho -1;
elif (( $# == 1 ))
thenecho $[ $1 + $1 ];
elseecho $[ $1 + $2 ];
fi
}
echo -n "Adding 10 and 15:";
value=`addem 1015`;
echo$value; #25echo -n "Let's try adding just on number:";
value=`addem 20`;
echo$value; #40echo -n "Now tring adding no number:";
value=`addem`;
echo$value; #-1
使用local关键字在函数中设置局部变量 local temp=$[ $value + 5 ]
函数递归
function factorial(){
local param=$1;
if (( param == 1 ))
thenecho1else
local temp=$[ $param - 1 ];
local result=`factorial $temp`;
echo $[ $param * $result ];
fi
}
factorial 5#120