如果我有这样的脚本:
#!/bin/bash
echo `script2.sh` > temp.txt &
(wait for long enough time)
a=`cat temp.txt`
echo $a
a 的值将被 script2.sh 成功更改。但是,如果我这样做:
#!/bin/bash
a=`script2.sh` &
(wait for long enough time)
echo $a
a 的值不会被 script2.sh 改变。我之所以要这样做是因为:(1)我不希望主进程被script2.sh阻塞(在等待期间,我可以做其他事情)(2)我的主程序会做很多这样的东西,所以做很多文件IO会给我带来很大的开销,最好直接将值分配给内存中的变量。我发现 bash 脚本中的文件 IO 真的很慢。在我的程序中,执行 400 次这样的 IO 大约需要 10 秒(虽然计算机很忙)!有什么建议吗?