介绍
在本实验中,你将学习如何在 Shell 编程中执行基本的算术操作。你将创建一个简单的脚本来计算水果篮的总成本,展示如何在 Bash 中使用变量和算术表达式。本实验专为初学者设计,因此我们将详细解释每个步骤。
创建一个新的 Bash 脚本
让我们从创建一个新的 Bash 脚本文件开始。
在 WebIDE 中打开你的终端。你应该会看到一个命令提示符,可能类似于这样:
labex@ubuntu:~/project$。我们将在
project目录中创建脚本。默认情况下,你已经在这个目录中,但为了确保,我们可以使用cd命令:cd ~/project这条命令将当前目录切换到
/home/labex/project。现在,让我们创建一个名为
fruit_basket.sh的新文件。我们将使用touch命令,它会创建一个空文件:touch fruit_basket.sh在 WebIDE 编辑器中打开
fruit_basket.sh文件。你可以通过点击 WebIDE 左侧文件资源管理器中的文件名来打开它。每个 Bash 脚本都应该以 "shebang" 行开头。这一行告诉系统使用哪个解释器来运行脚本。在文件的开头添加以下行:
#!/bin/bash这一行指定脚本应使用 Bash 解释器运行。
定义水果成本的变量
现在我们已经有了脚本文件,接下来让我们定义一些变量来存储不同水果和篮子的成本。
将以下内容添加到你的 fruit_basket.sh 文件中:
#!/bin/bash
## 定义成本
COST_PINEAPPLE=50
COST_BANANA=4
COST_WATERMELON=23
COST_BASKET=1
让我们分解一下这些内容:
- 在 Bash 中,我们不需要在使用变量之前声明它们。我们只需为变量名赋值即可。
- 变量名是区分大小写的。按照惯例,我们通常使用大写字母表示常量(不会改变的值)。
- 在赋值时,
=符号周围不能有空格。 - 这些值表示以分为单位的成本。例如,
COST_PINEAPPLE=50表示一个菠萝的成本是 50 分。 - 我们不需要指定数据类型。Bash 默认将这些值视为字符串,但在执行算术运算时会将其视为数字。
计算总成本
现在我们已经定义了成本,接下来让我们计算包含 1 个菠萝、2 根香蕉和 3 个西瓜的水果篮的总成本。
将以下内容添加到你的 fruit_basket.sh 文件中:
#!/bin/bash
## 定义成本
COST_PINEAPPLE=50
COST_BANANA=4
COST_WATERMELON=23
COST_BASKET=1
## 计算总成本
TOTAL=$((COST_PINEAPPLE + (COST_BANANA * 2) + (COST_WATERMELON * 3) + COST_BASKET))
让我们分析一下这行新代码:
$(( ))是 Bash 中用于算术运算的语法。双括号内的任何内容都被视为算术表达式。- 在算术表达式中,我们不需要在变量名前使用
$。 - 我们执行了以下操作:
COST_PINEAPPLE:1 个菠萝的成本(COST_BANANA * 2):2 根香蕉的成本(COST_WATERMELON * 3):3 个西瓜的成本COST_BASKET:篮子本身的成本
- 这些值相加后,结果存储在
TOTAL变量中。
注意:Bash 仅处理整数运算。如果我们需要处理美元和美分,则需要使用 bc 等工具进行浮点运算。
显示总成本
为了查看计算结果,我们需要打印总成本。将以下内容添加到你的 fruit_basket.sh 文件中:
#!/bin/bash
## 定义成本
COST_PINEAPPLE=50
COST_BANANA=4
COST_WATERMELON=23
COST_BASKET=1
## 计算总成本
TOTAL=$((COST_PINEAPPLE + (COST_BANANA * 2) + (COST_WATERMELON * 3) + COST_BASKET))
## 显示总成本
echo "Total Cost is $TOTAL cents"
让我们分解一下这行新代码:
echo是一个将文本打印到终端的命令。- 引号内的文本将按原样打印,除了
$TOTAL部分。 - 当变量名在字符串中以
$开头时,Bash 会将其替换为变量的值。这称为变量扩展。 - 因此,如果
TOTAL是 128,输出将是 "Total Cost is 128 cents"。
使脚本可执行并运行它
现在我们的脚本已经完成,我们需要使其可执行并运行它。
在终端中,使用
chmod命令使脚本可执行:chmod +x ~/project/fruit_basket.sh这条命令会更改文件的模式,为用户添加执行(
x)权限。现在,让我们运行脚本:
~/project/fruit_basket.sh这条命令告诉 Bash 执行我们的脚本。
~/project/部分指定了脚本的路径。
你应该会看到类似以下的输出:
Total Cost is 128 cents
这个输出显示了我们水果篮的总成本(1 个菠萝、2 根香蕉、3 个西瓜和篮子本身)是 128 分。
总结
在本实验中,你学习了如何在 Shell 编程中使用基本运算符执行算术操作。你创建了一个 Bash 脚本,通过定义各个成本的变量并使用算术表达式计算总成本,来计算水果篮的总成本。你还学习了如何使脚本可执行并从命令行运行它。
需要记住的关键点:
- Bash 脚本以 shebang 行(
#!/bin/bash)开头。 - 在 Bash 中,变量赋值时
=符号周围不能有空格。 - Bash 中的算术操作在
$(( ))内执行。 echo命令用于打印输出。- 脚本需要通过
chmod +x设置为可执行后才能运行。
这些技能为更复杂的 Shell 脚本任务奠定了基础,并可以应用于需要在脚本中执行计算的各种场景。



