1、变量的概念
其实shell中的变量是指向系统中一块存储数据的内存空间。变量的形式有局部变量和环境变量两种。并且shell变量属于弱类型的变量,可以不指定变量的类型就可以使用。
2、局部变量
局部变量是指在当前shell定义的变量,针对其他的shell来说是无效的,并且会随着当前shell的退出而释放掉。局部变量的作用域是在声明它的的shell中。可以使用local关键字来显式声明局部变量,但仅限于在函数内使用。
3、环境变量
环境变量也是全局变量。默认在shell脚本中。变量默认值就是全局的,不论在脚本的任何位置声明,都是为了让子shell继承当前的shell变量,则可以使用export内建命令将其导出为环境变量。
注意点:环境变量只能向下传递不能向上传递,相当于程序中继承的概念。
简单用法:
export num=10 #定义一个环境变量
echo $num #输出结果
输出结果:10
bash #进入子shell
echo $num #输出结果
输出结果:10
export num2=100 #子shell定义环境变量num2
echo $num2 #输出结果
输出结果:100
exit #退出子shell ,返回父shell
echo $num2
输出结果: