在 GNU 并行中暂停并等待字符

在 GNU 并行中暂停并等待字符

我希望将计时暂停替换为 GNU 并行执行中的 getchar() 等效项:

parallel -j2 --halt 2 ::: 'sleep 5m; return 1' './runMe'

但是,以下内容不起作用(它立即完成第一个作业的执行):

parallel -j2 --halt 2 ::: 'read -n1 kbd; return 1' '/runMe'

除了等待还有其他办法吗?注意:./runMe 包含无限循环。

答案1

GNU Parallel 可以使用-p.

parallel -p echo ::: 1 2 3

y你每次都必须回答,但这也许就足够了。

另请注意,任何输出都会延迟。并行运行 3 个作业时,作业 1 的输出将在启动作业 3 后打印。

相关内容