multithreading - 在KSH产生过程中设置变量

标签 multithreading variables ksh

我有一个冗长的菜单脚本,该脚本脚本依赖于一些变量的命令输出。这些命令每个都需要花费几秒钟来运行,我想产生新的过程来设置这些变量。它看起来像这样:

VAR1=`somecommand` &
VAR2=`somecommand` &
...
wait
echo $VAR1 $VAR2

问题是产生了这些进程,并因它们设置的那些变量而死亡。我意识到我可以通过将它们发送到一个文件然后读取该文件来做到这一点,但是我想在没有临时文件的情况下做到这一点。有任何想法吗?

最佳答案

您可以使用命令替换来获取整个过程的输出,例如:

VAR1=$(somecommand &)
VAR2=$(somecommand &)
...
wait
echo $VAR1 $VAR2

关于multithreading - 在KSH产生过程中设置变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13298541/

相关文章:

java - 在java中隧道化两个套接字客户端

linux - Linux 进程/线程可以在不通过 do_exit() 的情况下终止吗?

java - Android:正确关闭线程和Looper?

linux - 如何将剪切命令与文本限定符一起使用

c++ - ofstream线程安全吗?

javascript - 无法访问变量

javascript - 在javascript中定义和声明变量有什么区别吗?

c# - 获取作为参数发送的变量的名称

linux - Shell脚本不从输入文件中获取参数

bash - 从脚本中获取最后执行的命令