Bash 自定义变量与环境变量

自定义变量(局部变量)

定义:

xiaoyaz@localhost:~$ test=1

查看:

xiaoyaz@localhost:~$ echo $test #1
xiaoyaz@localhost:~$ echo ${test} #1
xiaoyaz@localhost:~$ bash #开一个子进程(bash)
xiaoyaz@localhost:~$ echo $test #  
xiaoyaz@localhost:~$ echo ${test} #

作用范围:此进程(bash),子进程(bash)不可调用,关闭后失效。

 

环境变量(全局变量)

定义:

xiaoyaz@localhost:~$ test=1

xiaoyaz@localhost:~$ export test #export test=1 自定义变量转换成环境变量

查看:

xiaoyaz@localhost:~$ echo $test #1
xiaoyaz@localhost:~$ echo ${test} #1
xiaoyaz@localhost:~$ bash #开一个子进程(bash)
xiaoyaz@localhost:~$ echo $test #1
xiaoyaz@localhost:~$ echo ${test} #1

作用范围:此进程(bash),子进程(bash),关闭后失效。

 

为什么环境变量会让子进程调用?

开启一个bash,会分配一块内存存放环境变量,开启子bash会读取父内存中环境变量,并存放到自己的内存中。

Bash查看默认环境变量

xiaoyaz@localhost:~$ env #环境变量
xiaoyaz@localhost:~$ set #环境变量和自定义变量

  

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...