1. 变量
Shell也可以设置变量,如系统默认的变量 SHELL(当前用户的解释器)、USER(当前用户)、HOME(当前用户的加目录)等
查看这些变量的值只需要 echo $变量名
即可
例如:
echo $SHELL
echo $USER
echo $HOME
上述输出结果根据笔者所在的环境分别为
/bin/zsh
ecs-user
/home/ecs-user
下面开始更加详细的说明
1.1. 系统变量
系统变量,顾名思义,就是系统自带的变量
除了已经介绍过的SHELL、USER、HOME
等外,还有如
PATH:环境变量,包含了可执行文件的搜索路径。
BASH_VERSION:Bash shell的版本信息。
PWD:当前工作目录的绝对路径。
LANG:系统的语言和字符集设置。
TERM:终端类型。
LOGNAME:当前登录的用户名。
HISTSIZE:命令历史记录的数量。
LINES:终端的行数。
USER:非root用户的用户名。
UID:用户ID(root用户为0)。
GID:组ID(root用户为0)。
额外的:
- 使用
env
命令查看当前系统定义的所有环境变量 - 使用
set
命令显示所有本地定义的Shell变量
1.2. 自定义变量
除了系统自带的系统变量以外,用户还可以自定义属于自己的变量
1) 基本语法
- 定义变量
变量名=变量值
等号两边不能有空格 - 撤销变量
unset 变量名
- 静态变量
readonly 变量名
静态变量不可撤销 - 全局变量
export 变量名
2)变量命名规则
- 变量名必须以字母(a-z、A-Z)或下划线(_)开头
- 变量名区分大小写,环境变量命名建议大写
- 变量名不能是bash的内置命令或关键字
- 变量名长度不能超过99个字符
- 变量名不能包含空格或其他特殊字符
3)变量使用技巧
- 变量默认类型都是字符串类型,无法直接进行数值运算
- 变量的值如果有空格,需要使用双引号或单引号括起来