![d87ce8272f9e01ff88b60df31c6b5723.png](https://i-blog.csdnimg.cn/blog_migrate/b487e165a484028e12e3499811fcd867.jpeg)
一.Shell变量分类
(1) 本地变量
应用场景:在shell脚本中定义的临时变量(只在shell脚本中可用),关闭当前shell进程后消失,对子进程和其他进程无效。
格式 VAR_NAME = VAL
(2)环境变量
应用场景:用于设置临时环境变量,对子shell进程有效,对其它shell进程无效。
格式:export VAR_NAME=VALUE,在本地变量格式的基础上添加一个export参数。
设置永久的环境变量,需要添加到配种文件/etc/profile中,然后source /etc/profile 生效
(3)位置变量
应用场景:给shell脚本动态的传递参数,需要用到位置变量,类似于 $0 $1,$后面的数字理论上没有什么限制。
sh location.sh abc def
通过在脚本中使用$+数字获取位置参数
$0的值是这个脚本的名称
$1 是脚本后面的第一个参数
...
(4)特殊变量
- 状态码$?
$?表示上一条命令的返回状态码,状态码在0-255之间,0表示执行成功