创建带有输入参数的 Shell 脚本

Red Hat Enterprise LinuxBeginner
立即练习

介绍

在本挑战中,你将学习如何创建一个能够接收并处理输入参数的简单 Shell 脚本。Shell 脚本是 Linux 环境中极其强大的工具,它可以让你实现重复性任务的自动化并优化工作流程。通过掌握脚本输入的使用方法,你可以让脚本变得更加灵活和动态,从而满足特定的需求。这是系统管理员的一项基本技能,也是 RHCSA 等认证考试中的常见考点。

这是一个「挑战」项目,它与「引导实验」的不同之处在于,你需要尝试独立完成挑战任务,而不是按照实验步骤逐步学习。挑战通常具有一定的难度。如果你觉得困难,可以与 Labby 讨论或查看解决方案。历史数据显示,这是一个初学者级别的挑战,通过率为 98%。它在学习者中获得了 100% 的好评率。

创建带有输入参数的 Shell 脚本

在这一步中,你将创建一个从命令行接收两个输入参数的 Shell 脚本。随后,这些参数将在脚本内部用于执行简单的算术运算。理解如何处理输入参数对于编写灵活且可重用的脚本至关重要。

任务

  • ~/project 目录下创建一个名为 script.sh 的 Shell 脚本。
  • 该脚本应接收两个数字作为输入参数。
  • 该脚本应计算这两个参数的和。
  • 该脚本应将加法运算的结果打印到标准输出。

要求

  • Shell 脚本必须命名为 script.sh
  • 脚本必须位于 ~/project 目录中。
  • 脚本必须使用 $1$2 变量分别访问第一个和第二个输入参数。
  • 脚本必须对两个输入参数执行加法运算。
  • 脚本的输出格式必须严格为 The result is: <sum>,其中 <sum> 是计算出的总和。

示例

以下是脚本执行时的行为示例:

[labex@host ~]$ mkdir -p ~/project
[labex@host ~]$ cd ~/project
[labex@host project]$ nano script.sh
## (创建并保存脚本后)
[labex@host project]$ chmod +x script.sh
[labex@host project]$ ./script.sh 10 20
The result is: 30
[labex@host project]$ ./script.sh 5 8
The result is: 13

提示

  • 你可以使用 nano 来创建和编辑脚本文件。
  • 记得在运行脚本之前,使用 chmod 命令赋予脚本可执行权限。
  • 在 Bash 中,可以使用 ((...))$[...] 语法执行算术运算。例如:result=$((num1 + num2))
  • 可以使用 echo 命令将输出打印到终端。
✨ 查看解决方案并练习

总结

在本挑战中,你学习了如何创建一个简单的 Shell 脚本,使其能够接收输入参数并利用这些参数执行基本运算。你练习了创建脚本文件、赋予可执行权限以及使用 $1$2 访问命令行参数。通过掌握脚本输入的使用方法,你获得了一项宝贵的技能,可以将其应用于更复杂的 Shell 脚本编写任务中。本挑战有助于巩固 RHCSA 考试中关于创建简单 Shell 脚本和处理脚本输入的目标,这对于在 Linux 环境中实现任务自动化至关重要。