如何在Linux上获得4个并行进程的结果

时间:2013-12-19 10:25:43

标签: linux bash parallel-processing

我有一个可执行文件test_run
我不想从控制台运行它并获得输出。

对于单次运行,我使用了./test_run | grep '[0-9]*'
但是对于4个并行运行,这个解决方案不起作用

./test_run | grep '[0-9]*' & ./test_run | grep '[0-9]*' & ./test_run | grep '[0-9]*' &./test_run | grep '[0-9]*' 

我不时得到1到4个结果。但我需要每次运行得到稳定的4个结果。

如何从4个并行进程获取输出? 顺便说一下,我没有消息来源。

3 个答案:

答案 0 :(得分:0)

你可以试试GNU Parallel http://www.gnu.org/software/parallel/

您可以并行执行shell脚本并输出grep。

答案 1 :(得分:0)

我建议使用PDSH

这是一个非常强大且有用的工具

答案 2 :(得分:0)

缺少的结果可能是来自"终端"您正在使用的会话来运行cmd。要确认已删除的项目,请尝试将上面的行转换为脚本,然后将脚本输出重定向到文件。即./myWrapperScript.sh > /tmp/wrapperScript.out 2>&1。祝好运。 - 炮手