导出变量

时间:2019-04-16 23:59:04  来源:igfitidea点击:

内置的export将自动导出到子进程的环境。
例如,创建一个名为vech的变量,赋给它一个值“Bus”:

vech=Bus

显示变量的值

echo "$vech"

现在我们开启一个新的shell实例

bash

现在显示变量的值,得到是空值,
这是因为vech没有导到新的进程中。

echo "$vech"

要使子进程都知道该变量,需要使用export命令。

export vech=Bus
export backup="/nas10/mysql"
echo "Backup dir $backup"
echo "$vech"
bash
echo "Backup dir $backup"
echo "$vech"

默认情况下,所有用户定义的变量都是本地的。
它们不会被导出到新进程中。

查看所有导出的变量

如果没有给export命令提供变量名或函数名,或者提供了-p选项,则将输出在此shell中导出的变量的列表。

[root@rhel6 tmp]# export -p
declare -x CVS_RSH="ssh"
declare -x G_BROKEN_FILENAMES="1"
declare -x HISTCONTROL="ignoredups"
declare -x HISTSIZE="1000"
declare -x HOME="/root"
declare -x HOSTNAME="rhel6"
declare -x KDEDIRS="/usr"
declare -x KDE_IS_PRELINKED="1"
declare -x LANG="en_US.UTF-8"
declare -x LESSOPEN="|/usr/bin/lesspipe.sh %s"
declare -x LOGNAME="root"