怎么做交互式网站,深圳高端家装公司,广饶网站开发,网站建设微信小程序开发相关阅读
Linuxhttps://blog.csdn.net/weixin_45791458/category_12234591.html?spm1001.2014.3001.5482 Linux中的内建命令export命令用于创建一个环境变量#xff0c;或将一个普通变量导出为环境变量#xff0c;并且在这个过程中#xff0c;可以给该环境变量赋值。 下面…相关阅读
Linuxhttps://blog.csdn.net/weixin_45791458/category_12234591.html?spm1001.2014.3001.5482 Linux中的内建命令export命令用于创建一个环境变量或将一个普通变量导出为环境变量并且在这个过程中可以给该环境变量赋值。 下面是该命令的语法。
用法
export [-pfn] [name[word]]
选项
-p 指定该选项会打印出当前进程的所有环境变量被导出的变量及其值
-f 指定导出一个函数名
-n 取消一个环境变量被导出的变量或导出函数的导出属性 环境变量被导出的变量指的是一类特殊的变量当一个进程开辟了其他进程后它们会被子进程继承系统默认的环境变量一般使用大写变量名后面我们统称环境变量。例如$SHELL这个环境变量就存储了用户默认登录的Shell路径可以使用echo命令查看一个环境变量的值。
[***EDA ~]$ echo $SHELL
/bin/bash使用export命令而不添加name参数会导致和使用-p选项一样的结果即打印出当前进程的所有环境变量及其值。
[***EDA ~]$ export
declare -x SHELL/bin/bash
declare -x WINDOWPATH1
declare -x KDEDIRS/usr
declare -x LANGen_US.UTF-8
declare -x PrimeTime_HOME/opt/Synopsys/PrimeTime2018/pts/O-2018.06-SP1
declare -x Synopsys_Dir/opt/Synopsys
*****[***EDA ~]$ export -p
declare -x SHELL/bin/bash
declare -x WINDOWPATH1
declare -x KDEDIRS/usr
declare -x LANGen_US.UTF-8
declare -x PrimeTime_HOME/opt/Synopsys/PrimeTime2018/pts/O-2018.06-SP1
declare -x Synopsys_Dir/opt/Synopsys
***** 一个进程中定义的普通的变量是无法被其子进程访问到的。
[***EDA ~]$ aaa1 #在当前进程创建一个变量
[***EDA ~]$ bash #在当前进程运行另一个bash子进程
[***EDA ~]$ echo $aaa #此时尝试访问$aaa失败
(nothing output)一个进程中的环境变量可以被子进程继承。
[***EDA ~]$ bbb1 #在当前进程创建一个变量
[***EDA ~]$ export bbb #导出该变量使其成为环境变量
[***EDA ~]$ bash #在当前进程运行另一个bash子进程
[***EDA ~]$ echo $bbb #此时尝试访问$bbb成功
1 为什么我们不使用系统默认环境变量举例呢这是因为即使我们改变了系统默认环境变量的值 在新建bash子进程时虽然其继承了父进程的环境变量但其会自动读取配置文件初始化环境变量从而覆盖之前改变的值。
[***EDA ~]$ SHELL1 #改变系统默认环境变量
[***EDA ~]$ echo $SHELL #在当前进程中环境变量的值被改变
1
[***EDA ~]$ export #在当前进程中环境变量的值被改变
*****
declare -x SHELL1
*****
[***EDA ~]$ bash #在当前进程运行另一个bash子进程
[***EDA ~]$ echo $SHELL #环境变量的值虽然被继承但紧接着初始化了
/bin/bash 使用-n选项可以取消一个环境变量的导出属性即将一个环境变量变成普通变量。
[***EDA ~]$ ccc1 #在当前进程创建一个变量
[***EDA ~]$ export ccc #导出该变量使其成为环境变量
[***EDA ~]$ bash #在当前进程运行另一个bash子进程
[***EDA ~]$ echo $ccc #此时尝试访问$ccc成功
1
[***EDA ~]$ exit #退出bash子进程
[***EDA ~]$ export -n ccc #取消变量导出使其成为普通变量
[***EDA ~]$ echo $ccc #当前进程仍可以访问
[***EDA ~]$ bash #在当前进程运行另一个bash子进程
[***EDA ~]$ echo $ccc #此时尝试访问$ccc失败
(nothing output)使用-f选项可以导出一个函数使该函数能在子进程中调用。
[***EDA ~]$ my_function() { #在当前进程创建一个函数echo This is my function. }
[***EDA ~]$ export -f my_function #导出该函数
[***EDA ~]$ bash
[***EDA ~]$ my_function
This is my function.由于.bashrc配置文件的内容会在bash启动后被读取并执行所以如果要添加一个默认的环境变量需要在配置文件中使用export命令如下图所示。