Bash 出口不';我不能在后台工作
pipe.shBash 出口不';我不能在后台工作,bash,shell,Bash,Shell,pipe.sh export START=100 . ./other.sh & wait sleep 5 export END=200 other.sh export START=100 . ./other.sh & wait sleep 5 export END=200 但是我在export-p中没有看到变量END。如果我在前景中使用sourceother.sh,它仍然可以工作 export START=100 . ./other.sh 如何从后台进
export START=100
. ./other.sh &
wait
sleep 5
export END=200
other.sh
export START=100
. ./other.sh &
wait
sleep 5
export END=200
但是我在export-p
中没有看到变量END。如果我在前景中使用sourceother.sh,它仍然可以工作
export START=100
. ./other.sh
如何从后台进程导出变量?任何解决方法?子进程无法更改父进程环境,您需要以某种方式从父进程声明变量。例如,使用文件: pipe.sh:
export START=100
. ./other.sh > tmp &
wait
source tmp
rm tmp
echo $END
other.sh:
sleep 5
echo "export END=200"
.您希望后台采购如何运作?我可以想象两种情况,它们都不是有用的(父进程在生成时立即从后台进程分离;或者,父进程在前台命令之间随机执行后台命令)。你想完成什么?回溯处理是如何推进这一目标的?我想知道完成回溯处理需要多少时间。我有10多个不同的进程同时启动并在后台运行。因此,我认为这种方法将有助于确定流程的时间。我愿意接受任何其他方式。谢谢。后台处理的时间安排很简单。为什么您需要它将某些内容导出回家长?您能为我提供一种更好的时间安排方式吗?我试着在网上搜索我找到了。子进程。我觉得很刺耳。谢谢