【问题标题】:Shell scripting: How to check if an input argument is a Math operatorShell 脚本:如何检查输入参数是否为数学运算符
【发布时间】:2015-01-22 01:00:25
【问题描述】:

我想构建一个基本的计算器,我将给出两个数字和其中一个作为参数 +,-,/,* 。示例 1+2=3 。我知道如何检查参数是否为数字,但符号呢?

【问题讨论】:

  • 您可能应该使用case 为每个输入选择操作。如果它不匹配任何有效的,你应该有一个 * 在最后打印一个错误的条目。
  • 您使用的是哪个外壳?见:stackoverflow.com/questions/14350556/…

标签: bash shell


【解决方案1】:

使用case:

case "$op" in
    '*') result=$(($arg1 * $arg2))
        ;;
    /) # code for division
        ;;
    -) # code for subtraction
        ;;
    +) # code for addition
        ;;
    *) echo "Unknown operator '$op'"
        ;;
esac

【讨论】:

  • 谢谢,但我应该为每个代码写什么?你能用 1 美元和 3 美元写吗?谢谢
  • 这是您的计算器代码。我不会为你写这个。
  • 我添加了一个乘法示例
  • 谢谢 Barmar 感激不尽。
猜你喜欢
  • 2011-09-22
  • 2022-11-04
  • 2013-03-22
  • 2012-10-20
  • 2012-08-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多