专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Linux/Unix

请教怎么读取“9 * 8”中的“*”字符

发布时间:2011-06-27 17:41:30 文章来源:www.iduyao.cn 采编人员:星星草
请问如何读取“9 * 8”中的“*”字符?
写了一个计算器脚本,在计算乘法的时候始终报错。原因在于输入“9 * 8”字符时,无法用op=`echo $exp | cut -d ' ' -f 2`读取“*”,读取的结果是“aplusb”。但是做加减除(+ - /)运算则能够正确读取运算符。为何?求解。
#/bin/bash
#由用户输入计算表达式,程序给出计算结果

#1.提示用户该程序的功能
echo "由用户输入计算表达式,程序给出计算结果"
#2.用户输入操作数与操作符
read -p "开始新的计算吗?" yes
while [ "$yes" == "y" ]
do
read -p "请输入计算表达式(如8 + 9):" exp
num1=`echo $exp | cut -d ' ' -f 1`
num2=`echo $exp | cut -d ' ' -f 3`
op=`echo $exp | cut -d ' ' -f 2`
echo $op #结果为aplusb
#3.根据用户输入的操作符,做相应的计算
if [ "$op" == "+" ]; then
  sum=$(($num1+$num2)) && echo "$num1 $op $num2 = $sum"
elif [ "$op" == "-" ]; then
  sum=$(($num1-$num2)) && echo "$num1 $op $num2 = $sum" 
elif [ "$op" == "*" ]; then
  sum=$(($num1*$num2)) && echo "$num1 $op $num2 = $sum" 
elif [ "$op" == "/" ]; then
  sum=$(($num1/$num2)) && echo "$num1 $op $num2 = $sum" 
else
  echo "非法的操作符"
fi
read -p "开始新的计算吗?" yes
done

------解决方案--------------------
Python code

 num1=`echo [color=#FF0000]"$exp"[/color] | cut -d ' ' -f 1`
 num2=`echo [color=#FF0000]"$exp"[/color] | cut -d ' ' -f 3`
 op=`echo [color=#FF0000]"$exp"[/color] | cut -d ' ' -f 2`
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: