Logo
Section 1 / 7

变量及其类型

熟悉 shell 环境中的变量及其类型。

导入

变量及其类型

熟悉 shell 环境中的变量及其类型。

如果你有编程经验,可能已经熟悉变量的基本概念。本章将简要总结到目前为止所学的所有概念,并让你通过实践掌握变量赋值。变量本质上是内存位置的占位符,它们使程序员能够快速存储或检索数据,以确保程序的成功执行。

在 Bash 中,变量通常被称为 Bash 参数。这些参数可以进一步分为三类:特殊参数、位置参数 和 Shell 变量。在本章中,我们仅介绍最后一种,因为它是最重要的变量类型。在 Bash 中,无需声明变量类型,因此变量可以存储任何你赋予它的内容,无论是数字、字符串还是字符。

## <mark> 变量的类型</mark> 根据其生命周期、作用范围和用途,变量通常可分为以下四类: - Shell 变量 - 局部变量 - 环境变量 - 其他变量 ### 1. Shell 变量 Shell 变量是 Shell 正常运行所需的一组局部变量的组合。每个 Shell 都有自己的 Shell 变量,这些变量仅在该 Shell 内部可访问。它们甚至对父 Shell 或子 Shell 也不可见。 **示例:** `$my_var`

2. 局部变量

局部变量是在命令行提示符下设置的,仅在当前 Shell 中可用。它们无法被当前 Shell 启动的子进程或程序访问。所有用户定义的变量都是局部变量。

示例: MY_MESSAGE=HELLO

### 3. 环境变量 环境变量则可以在 Shell 的任何位置访问,甚至可以被 Shell 中调用的子进程访问。在 Bash 中,使用 `export` 命令来创建环境变量。 **示例:** `$PATH` 是最重要的环境变量之一,它指定了程序存放的目录列表。这使得安装同一程序的多个版本变得非常方便,使用起来十分便捷。

4. 其他变量

系统默认设置的一些其他系统变量如下所示:

变量含义
$USER返回用户名
$HOSTNAME返回机器名称
$$返回脚本的进程 ID
$0返回脚本的名称
$1-9返回脚本中的前 9 个参数

系统与进程命令

变量赋值与扩展