multithreading - 捕获异步 bash 命令的输出?

标签 multithreading bash scripting asynchronous

是否可以在 bash 中执行类似的操作?

output=$(echo hello; sleep 10) &
pid=$!
# run some more commands
wait $pid
echo $output

我想并行运行多个命令,捕获它们的输出。我想以“干净”的方式做到这一点 - 不写入临时文件等。

最佳答案

您可以使用命名管道在父级和子级之间进行通信,请参阅 man mkfifo了解详情。父级可以使用read命令从管道中获取数据。

关于multithreading - 捕获异步 bash 命令的输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7194953/

相关文章:

java - 使用线程时 Swing GUI 不显示

php - 检测按顺序完成的线程

linux - 如何将变量赋值的耗时存储到bash脚本中的另一个变量?

linux - mkdir $variable/$variable2 不起作用

java - 套接字异常 : socket closed in accept() on ServerSocket

C++ 指定范围内的多线程素数计数器

linux - 将 "module"别名(调用 modulecmd)从 tcsh 适配到 bash

python - Bash进程执行逻辑

c++ - 带有 VS2005/8 的 C++ Firefox 脚本插件的基本示例

linux - 我们可以将选项传递给 tcl 8.5 中的 tcl source 命令吗