1.变量的定义
1)定义本身
变量就是内存当中一片区域的地址
2)变量存在的意义
命令无法操作一直变化的目标
用一串固定的字符来表示不固定的目标可以解决此问题
2.shell脚本中变量的定义方法
1)环境级别
export a=1
在环境关闭后变量失效,因为其所占用的真实资源被物理回收了。
2)用户级别
该用户生效,其他用户不生效
[root@xixi mnt]# su - westos
Last login: Wed Apr 22 18:31:48 CST 2020 on pts/1
[westos@xixi ~]$ ls -a
. .bash_history .bash_profile .cache .mozilla
.. .bash_logout .bashrc .config
其中.bash_profile 时shell所用环境信息的配置文件
.bashrc shell本身工作,程序运行的配置文件
-
vim ~/.bash_profile
-
默认不生效,我们要对他进行生效
source .bash_profile
,此时执行脚本。
切换回root用户后,结果对比表明:用户级别的定义,仅在指定用户生效,其余用户不生效
-
在root中也进行上述设定,此时设定也成功
3)系统级别
在系统里时生效的,除了这个系统外,其余不生效
-
vim /etc/profile
-
读取的时候,先是全局的,然后再读取自己的,所以用户信息会把全局信息覆盖掉。此时我们生效全局后,变成了2
-
vim /etc/profile.d/westos.sh
4)变量名称
-
“字符” 或 “_” 或 “数字”
注意:不能用数字开头
<