使用export发送到后台时的空变量

时间:2013-03-05 16:06:40

标签: bash for-loop background

我正在从mysql构建一个站点地图并加快速度,我想将我的功能发送到后台。当我这样做时,"$SITEMAP"变量显示为空。

我尝试过设置导出SITEMAP="$SITEMAP"

for ((i=0; i<CNT; i++)); do
    xml() {
        ...
        export SITEMAP="$SITEMAP"
    }
    xml &
    echo -e "$SITEMAP"
done

PS: 没有向后台发送“xml”函数,脚本可以工作 正确。

2 个答案:

答案 0 :(得分:1)

因为后台shell是一个不同的过程。其余部分解释为例如here

答案 1 :(得分:1)

致电时

 xml &

你开始一个不同的过程,然后export仅在后者的环境中有效。

删除&,它将起作用