我目前正在学习使用gnu_paralle。我已经读过https://www.gnu.org/software/parallel/man.html#EXAMPLE:-Working-as-xargs--n1.-Argument-appending
以及其他一些资源,并且在语法学习方面取得了一些成功。
此刻,我有一个g ++编译的可执行文件,其中包含* argv。我目前通过在bash中执行以下操作来串行运行它:
cd ./ && find ./data | grep '\.data.format$' > datalist.tmp;
然后我按以下顺序阅读文件列表
while read LINE; do executable $LINE; done <datalist.tmp
现在。通过阅读gnu_parallel文档,我了解可以并行处理多个实例中的可执行文件。
请问有人在这里提供语法帮助吗?
答案 0 :(得分:1)
尝试:
parallel -a datalist.tmp executable
或者:
parallel executable < datalist.tmp
不确定cd ./
在做什么-它似乎将目录更改为当前目录,这似乎毫无意义,因为该进程已经在这里。
答案 1 :(得分:0)
谢谢。 我最终找到了以下解决方案,
while read LINE; do echo executable.exe $LINE ; done < data.tmp |paralell -j4