一、简介
- 定义变量格式
变量名=变量值
- 注释事项
=
两边不能有空格,不要使用关键字作为变量名,例如ls、cd
等。- 如果变量名已经存在则覆盖之前的变量值。
- 变量名称由
字母/数字/下划线
组成,不能以数字开始。
- 取消变量格式,一般在脚本执行完毕之后,会自动回收取消,所以一般是用不上这个。
unset 变量
- 查看变量格式,两种取值方式结果一致
$变量名 ${变量名}
- 但是
${变量名}
可以处理一些细节情况,例如:
// 定义 name=dzm $ name=dzm // 输出 $name $ echo $name dzm // 名称后面拼接 '吃饭了',由于是中文,不会对属性进行影响,可以正常输出 $ echo $name吃饭了 dzm吃饭了 // 但是如果属性后面加的是数字,或者其他可用于定义属性的多余字符,则会输出失败 $ echo $name3 $ echo $name3.7 .7 // 所有这个时候就需要 ${变量名} 来进行区分处理了 $ echo ${name}3.7 dzm3.7
二、变量类型
环境变量
(变量名通常大写,由操作系统维护)
- 存储在
/etc/profile
或~/.bash_profile
- 命令
$ env
可以列出所有环境变量 - 常见环境变量:
PATH、PWD、USER、UID、HOME、SHELL
echo $PAT
预定义变量
(可以调用但是不能赋值或修改)
- 不同的解释器,可能会支持不同的预定义变量。
- Shell 预定义变量 (
$0、$$、$?、$#、$*
含义)
位置变量
(执行脚本时,后面跟的参数)自定义变量
(用户自主设置)