考虑以下文件保存为commands.txt
ls
&& pwd
ls
&& pwd
现在
bash commands.txt
按预期工作
LICENSE
/home/username/utilities
LICENSE
/home/username/utilities
,
parallel < commands.txt
给出错误
/bin/bash: -c: line 0: syntax error near unexpected token `&&'
/bin/bash: -c: line 0: `&& pwd'
ls: cannot access '': No such file or directory
/bin/bash: -c: line 0: syntax error near unexpected token `&&'
/bin/bash: -c: line 0: `&& pwd
为什么用分隔的相同命令的多行似乎不能与
parralel
一起工作?
为什么用分隔的同一命令的多行似乎不能像这样并行工作?
因为parallel
不解析,并为每一行执行一个单独的shell。
如果您的输入在每个组后面都有nn
(并且只在那里),您可以:
cat commands.txt | parallel -d 'nn'