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