介绍
在本次挑战中,你将编写一个实现基础四则运算功能的 Shell 脚本。这将帮助你理解在 Shell 脚本中定义和使用多个函数的核心原理。
这是一个「挑战」项目,它与「引导实验」不同,你需要尝试独立完成挑战任务,而不是跟随实验步骤学习。挑战通常具有一定的难度。如果你感到困难,可以与 Labby 讨论或查看解决方案。历史数据显示,这是一个 初学者 级别的挑战,通过率为 98%,并获得了学习者 97% 的好评率。
在本次挑战中,你将编写一个实现基础四则运算功能的 Shell 脚本。这将帮助你理解在 Shell 脚本中定义和使用多个函数的核心原理。
~/project 目录,你会发现一个名为 calculator.sh 的未完成脚本。calculator.sh 文件,补全四个函数:add、subtract、multiply 和 divide。~/project 目录中已经预置了具有基本结构的 calculator.sh 脚本。add:接收两个参数并返回它们的和。subtract:接收两个参数并返回第一个数减去第二个数的结果。multiply:接收两个参数并返回它们的乘积。divide:接收两个参数并返回第一个数除以第二个数的结果。请务必处理除以零的情况。echo 输出结果。case 语句中,所有的运算符(+、-、*、/)都已用引号括起来,以防止被 Shell 误解析。如果不加引号,* 符号会作为通配符匹配任何输入,从而导致非预期的行为。以下是完成后的脚本运行示例:
$ ./calculator.sh
Enter first number: 10
Enter second number: 5
Enter operation (+, -, *, /): +
Result: 15
$ ./calculator.sh
Enter first number: 10
Enter second number: 5
Enter operation (+, -, *, /): -
Result: 5
$ ./calculator.sh
Enter first number: 10
Enter second number: 5
Enter operation (+, -, *, /): *
Result: 50
$ ./calculator.sh
Enter first number: 10
Enter second number: 5
Enter operation (+, -, *, /): /
Result: 2
$ ./calculator.sh
Enter first number: 10
Enter second number: 0
Enter operation (+, -, *, /): /
Error: Division by zero is not allowed.
脚本中的字符串必须参考示例并保持不变,否则可能会导致测试失败。
在本次挑战中,你使用 Shell 脚本创建了一个四则运算计算器。你练习了如何定义接收参数、执行计算并返回结果的多个函数。通过这个练习,你巩固了对 Shell 脚本中函数声明和调用的理解,并掌握了在简单计算和错误处理中的实际应用。