[帮忙]做个实验。export变量。

sh/bash/dash/ksh/zsh等Shell脚本
回复
头像
cnkilior
论坛版主
帖子: 4984
注册时间: 2007-08-05 17:40

[帮忙]做个实验。export变量。

#1

帖子 cnkilior » 2008-10-27 17:24

1、export变量是一个shell变量,影响这个shell,以及其子shell,子shell的子shell。这点已经被确认了。
2、在一个脚本中声明一个export变量 export a=1。
要使这个变量在另一个脚本中可见,其调用方式必须为:. a.sh(假设名字是a.sh,并且可执行)而如果是/the/path/a.sh则影响不到调用其的脚本。这个很容易解释:应为这样调用会生成一个子shell,export变量是不会影响其父shell的。

----手册页---
export Names of exported shell variables. May also be specified as -e.

----end----

----实验---
所有的这些都是在互交环境下完成的。如果在非互交环境下呢?例如init启动的rc.sysinit脚本(参照/etc/inittab 中si::sysinit:/etc/rc.d/rc.sysinit)以及其启动的其他脚本中export 一个shell变量,其生存周期如何?
---end---
头像
cnkilior
论坛版主
帖子: 4984
注册时间: 2007-08-05 17:40

Re: [帮忙]做个实验。export变量。

#2

帖子 cnkilior » 2008-10-27 17:26

debain系的没有inittab,囧了,不该在这问。
回复