Shell 实现简单计算器功能

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell 实现简单计算器功能相关的知识,希望对你有一定的参考价值。

Shell 实现简单计算器功能,脚本如下:

[[email protected] scripts]# cat jisuan.sh
#!/bin/bash
print_usage(){
    printf $"USAGE:$0 NUM1 {+|-|*|/} NUM2\n"
    exit 1
}

#判断传入的参数是不是3个
if [ $# -ne 3 ]
  then
    print_usage
fi

firstnum=$1
secondnum=$3
op=$2

#对传入的参数进行判断看是不是合理
if [ -n "`echo $firstnum|sed ‘s/[0-9]//g‘`" ];then
    print_usage
fi

if [ "$op" != "+" ]&&[ "$op" != "-" ]&&[ "$op" != "*" ]&&[ "$op" != "/" ];then
   print_usage
fi

if [ -n "`echo $secondnum|sed ‘s/[0-9]//g‘`" ];then
    print_usage
fi

echo "${firstnum}${op}${secondnum}=$((${firstnum}${op}${secondnum}))"

调试:

[[email protected] scripts]# sh -x jisuan.sh 6 + 4
+ ‘[‘ 3 -ne 3 ‘]‘
+ firstnum=6
+ secondnum=4
+ op=+
++ sed ‘s/[0-9]//g‘
++ echo 6
+ ‘[‘ -n ‘‘ ‘]‘
+ ‘[‘ + ‘!=‘ + ‘]‘
++ sed ‘s/[0-9]//g‘
++ echo 4
+ ‘[‘ -n ‘‘ ‘]‘
+ echo 6+4=10
6+4=10
[[email protected] scripts]# sh -x jisuan.sh 5 \* 5
+ ‘[‘ 3 -ne 3 ‘]‘
+ firstnum=5
+ secondnum=5
+ op=‘*‘
++ sed ‘s/[0-9]//g‘
++ echo 5
+ ‘[‘ -n ‘‘ ‘]‘
+ ‘[‘ ‘*‘ ‘!=‘ + ‘]‘
+ ‘[‘ ‘*‘ ‘!=‘ - ‘]‘
+ ‘[‘ ‘*‘ ‘!=‘ ‘*‘ ‘]‘
++ sed ‘s/[0-9]//g‘
++ echo 5
+ ‘[‘ -n ‘‘ ‘]‘
+ echo ‘5*5=25‘
5*5=25

注意: 

  1. “-x”表示调试,可以看见执行的步骤

  2. 对应 “*” 需要加 “\”转义

本文出自 “知识改变命运” 博客,请务必保留此出处http://ahtornado.blog.51cto.com/4826737/1927919

以上是关于Shell 实现简单计算器功能的主要内容,如果未能解决你的问题,请参考以下文章

shell脚本结合函数实现简单计算器功能

在Linux下,用shell编写一个简单的计算器,要实现加减乘除4个功能就行了

编写一个弹出式菜单的shell程序,利用函数实现简单的菜单功能,n的值由键盘输入:

代码片段:Shell脚本实现重复执行和多进程

IOS开发-OC学习-常用功能代码片段整理

vue2.0 代码功能片段