linux---shell变量
定义变量
语法: 变量名=值
规则:
- 变量名和=之间不能有空格
- 命名只能用英文、数字和下划线,并且不能以数字开头
- 不能使用bash里的关键字
使用变量
在变量名前加$符号即可
加大括号是为了帮助解释器识别变量的边界
这种定义的是局部变量,定义自定义环境变量需要加上export:
export my_name="pming"
只读变量
普通变量的值是可以改变的,可将其设置为只读变量,使其可读不可写
删除变量
unset my_name
注:unset命令不能删除只读变量。
变量类型
运行shell时,会同时存在三种变量:
- 1) 局部变量 局部变量在脚本或命令中定义,仅在当前shell实例中有效,其他shell启动的程序不能访问局部变量。
- 2) 环境变量 所有的程序,包括shell启动的程序,都能访问环境变量,有些程序需要环境变量来保证其正常运行。必要的时候shell脚本也可以定义环境变量。
- 3) shell变量 shell变量是由shell程序设置的特殊变量。shell变量中有一部分是环境变量,有一部分是局部变量,这些变量保证了shell的正常运行