你好,Bash!

LinuxBeginner
立即练习

简介

本实验将引导你创建一个简单的 Shell 脚本,用于打印经典的「Hello, World!」消息。你将学习使用 Bash Shell 进行 Shell 编程的基础知识,Bash 是 Unix 类操作系统(如 Linux)中最常用的 Shell。本实验专为初学者设计,因此即使你是编程或命令行的新手也无需担心。

WebIDE (VS Code) 简介

在这一步中,你将探索基于 Visual Studio Code (VS Code) 的 WebIDE。这个集成开发环境提供了一种便捷的方式,让你可以在同一个界面中编辑脚本并访问终端。

需要注意的是,虽然 WebIDE 的默认 Shell 是 Zsh,但我们在本实验中将编写 Bash 脚本。Bash (Bourne Again SHell) 是 Unix 类系统中最通用、最广泛使用的 Shell。Zsh (Z Shell) 是 Bash 的增强版本,具有一些改进和特性。对于本实验而言,这些差异不会影响我们的工作,因为我们的脚本将通过 shebang 行 (#!/bin/bash) 明确指定使用 Bash。

访问 WebIDE

当你启动实验时,会在浏览器中看到 WebIDE 界面。它由几个关键部分组成:

  • 文件资源管理器(左侧边栏):显示目录结构和文件。
  • 编辑器(主区域):你可以在这里编写和编辑脚本。
  • 终端(底部面板):你可以在这里运行命令和执行脚本。

打开终端

要在 WebIDE 中打开终端:

点击顶部菜单栏的「Terminal」,然后从下拉菜单中选择「New Terminal」。

这将在 WebIDE 底部打开一个新的终端面板。你会看到类似下面的命令提示符:

labex:project/ $

这表示你当前以 labex 用户身份登录,且当前目录为 ~/project(即 /home/labex/project 的简写)。

使用终端

WebIDE 终端界面示例

你可以像在 Linux 系统中使用普通终端一样使用此终端。例如,要查看当前目录的内容,可以输入:

ls

然后按回车键。这将列出你当前位置下的所有文件和目录。

创建 Shell 脚本文件

在这一步中,你将为 Shell 脚本创建一个新文件。我们将使用终端中的 touch 命令来完成此操作。touch 命令用于创建空文件或更新现有文件的访问和修改时间。

在终端中输入以下命令并按回车键:

touch hello.sh

该命令会在当前目录下创建一个名为 hello.sh 的空文件。.sh 扩展名通常用于 Shell 脚本,但它并非强制要求。

终端 touch 命令示例

运行此命令后,你不会看到任何输出。在 Unix 类系统中,没有输出通常意味着命令执行成功。

或者,你也可以通过 WebIDE 界面创建文件:

在文件资源管理器中,右键点击 /home/labex/project 目录,从上下文菜单中选择「New File」,输入文件名 hello.sh,然后按回车键。

这将创建一个名为 hello.sh 的新文件并在编辑器中打开它。

编辑 Shell 脚本

在这一步中,你将使用 WebIDE 内置的编辑器向文件中添加内容。

如果文件尚未在编辑器中打开:

在文件资源管理器中,双击 hello.sh 将其打开。

在编辑器中,准确输入以下两行内容:

#!/bin/bash
echo 'Hello, World!'

让我们解析一下这些行的含义:

  • #!/bin/bash - 这被称为「shebang」行。它告诉系统应该使用哪个解释器来运行此脚本。在本例中,我们指定使用 Bash Shell。
  • echo 'Hello, World!' - 这一行使用 echo 命令将文本「Hello, World!」打印到屏幕上。

输入这些行后,按 Ctrl + S 或通过顶部菜单选择「File」>「Save」来保存文件。

使脚本可执行

在这一步中,你将使脚本变为可执行文件。在 Unix 类系统中,文件具有控制谁可以读取、写入或执行它们的权限。默认情况下,新文件是不可执行的。

要使我们的脚本可执行,我们使用 chmod 命令(意为「change mode」,即更改模式)。在终端中输入以下命令并按回车键:

chmod +x hello.sh

该命令的含义如下:

  • chmod 是用于更改文件权限的命令
  • +x 表示「添加执行权限」
  • hello.sh 是我们的文件名

如果命令执行成功,你将不会看到任何输出。

执行脚本

在这一步中,你将运行这个可执行脚本。要在当前目录下运行脚本,我们需要在脚本名称前加上 ./。这个 ./ 告诉系统在当前目录下查找该脚本。

在终端中输入以下命令并按回车键:

./hello.sh

如果一切操作正确,你应该会看到以下输出:

Hello, World!

终端脚本执行输出

恭喜!你刚刚运行了你的第一个 Shell 脚本。

查看脚本内容

在这一步中,你将查看脚本内容以确认一切无误。我们可以使用 cat 命令来完成,它会在终端中显示文件的内容。

在终端中输入以下命令并按回车键:

cat hello.sh

你应该会看到脚本的内容显示如下:

#!/bin/bash
echo 'Hello, World!'

在处理脚本时,养成这种习惯非常好——始终仔细检查你的工作!

总结

在本实验中,你成功创建并执行了一个简单的 Bash Shell 脚本。你学习了如何:

  1. 浏览 WebIDE 并使用其集成终端
  2. 使用 touch 命令或 WebIDE 界面创建新的脚本文件
  3. 使用 WebIDE 内置编辑器编辑文件
  4. 理解 Shell 脚本中 shebang 行的作用
  5. 使用 echo 命令打印文本
  6. 使用 chmod 命令使脚本可执行
  7. 从命令行运行 Shell 脚本
  8. 使用 cat 命令查看文件内容

这些基本技能构成了 Unix 类环境中更高级的 Shell 脚本编写和自动化任务的基础。随着学习的深入,你将发现 Shell 脚本在管理系统和自动化任务方面是多么强大和灵活。

请记住,编程的关键在于实践。尝试修改脚本以打印不同的消息,或者创建新的脚本来执行其他简单的任务。不要害怕尝试——这就是学习的方式!