你好,Bash!

LinuxBeginner
立即练习

介绍

本实验将引导你创建一个简单的 Shell 脚本,用于打印经典的「Hello, World!」消息。你将学习使用 Bash(Bourne Again SHell)进行 Shell 编程的基础知识,Bash 是 Linux 等类 Unix 操作系统中广泛使用的工具。本实验专为初学者设计,所以如果你是编程或命令行的新手,也不必担心。

WebIDE (VS Code) 简介

在本次 Shell 脚本课程中,我们将使用基于 Visual Studio Code (VS Code) 的 WebIDE。这个集成开发环境提供了一个便捷的平台,让你可以在同一个地方编辑脚本并访问终端。

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

访问 WebIDE

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

  1. 文件资源管理器(左侧边栏):显示目录结构和文件。
  2. 编辑器(主区域):你编写和编辑脚本的地方。
  3. 终端(底部面板):你运行命令和执行脚本的地方。

打开终端

要在 WebIDE 中打开终端:

  1. 点击顶部菜单中的「Terminal」。
  2. 从下拉菜单中选择「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 界面创建文件:

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

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

编辑 Shell 脚本

文件创建好后,让我们给它添加一些内容。我们将使用 WebIDE 内置的编辑器来完成这项任务。

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

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

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

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

让我们解释一下这些代码的含义:

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

输入这些内容后,按 Ctrl + S 保存文件,或者通过顶部菜单的「File」>「Save」进行保存。

使脚本可执行

在运行脚本之前,我们需要赋予它执行权限。在类 Unix 系统中,文件拥有权限属性,用于控制谁可以读取、写入或执行它们。默认情况下,新创建的文件是不可执行的。

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

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 脚本在管理系统和自动化任务方面是多么强大和灵活。

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