我尝试使用 GNU 并行有一段时间了,但我从来没能让它发挥作用!
例如,运行(在非空目录中!):
ls | parallel echo # Outputs single new line
ls | parallel echo echo echo # Outputs three new lines.
ls | parallel echo {} # /bin/bash: {}: command not found
ls | parallel echo '{}' # /bin/bash: {}: command not found
ls | parallel 'echo {}' # Outputs: {}
ls | parallel -IMM 'echo MM' # Outputs: MM
看起来它只是将每个参数作为命令执行,这没有任何意义。
我尝试过 bash、zsh、tcsh、csh 和 sh,但没有成功。
最佳答案
当我即将写完这个问题时,我运行了 parallel --version
来报告版本,却发现:
WARNING: YOU ARE USING --tollef. IF THINGS ARE ACTING WEIRD USE --gnu.
我不清楚为什么默认设置该标志。不用说,使用 --gnu
有效!
我想发布此内容是为了避免某人遭受沮丧和困惑。
编辑:
要永久修复此问题(至少在 Ubuntu 中),请删除 /etc/parallel/config
--tollef
标志
关于parallel-processing - GNU 并行根本不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16448887/