shell脚本中的变量
一、变量的定义
- 变量就是内存一片区域的地址(用一个字符串表示内存地址的方式)
- 变量存在的意义:命令无法操作一直变化的目标,用一串固定的字符来表示不固定的目标可以解决此问题
二、shell脚本中变量的定义方法
1、变量名称
- 变量名称可包含的字符:字母,下划线
_
,数字 - 变量名称定义规则:不能用数字开头
- 建议:变量名称短全用大写字符,变量名称长用
_
区分子类
临时设定a为1,并写入脚本
用
sh
无法运行脚本,用.
可以运行脚本
因为sh
的运行方式会在当前shell中重新开启一个子shell,因此变量的值没有传递到子shell中,所以无法得到运行结果,须将变量放到公共区域中去。
2、环境级别
在环境关闭后变量失效
export a=1
当环境关闭后,shell在内存中的所有数据被系统回收,打开新的shell,是一个新的内存地址,无法寻址得到a的值
3、用户级别
环境关闭后,仍有效,切换用户后失效
vim ~/.bash_profile
export a=1
source ~/.bash_profile
4、系统级别
不受环境和用户的影响
cd /etc/profile.d
vim skk.sh
export a=1
env查看内建变量,用于显示系统中已存在的环境变量
5、删除设定的变量
依次删除设定的系统变量,用户变量,环境变量
rm -fr /etc/profile.d/skk.sh
vim ~/.bash_profile
unset a
三、变量的转译
1、转译
\ |
转译单个字符 |
“” |
弱引用,批量转译字符,不能转译< |