time for i in `ls /tmp/chunk*`; do (cat $i | tr ' ' '\n' | sort | uniq > /tmp/line${i:10}) & ;done
bash: syntax error near unexpected token `;'上述命令中的语法错误是什么?我还尝试使用{},并以;结束管道命令。但是同样的错误出现了.
发布于 2011-07-12 22:58:55
如果您想在后台并行运行所有作业,则应该将&放入()中。
time for i in `ls /tmp/chunk*`; do
(cat $i | tr ' ' '\n' | sort | uniq > /tmp/line${i:10} &)
done发布于 2011-07-12 22:59:19
您可以将&包括在大括号中:
time for i in `ls /tmp/chunk*`; do
{(cat $i | tr ' ' '\n' | sort | uniq > /tmp/line${i:10}) &};
done发布于 2011-07-12 23:16:33
&是一个分隔符,因此是多余的;即删除最后一个;
for i in /tmp/chunk*; do tr ' ' '\n' <$i | sort -u > /tmp/line${i:10}& donehttps://stackoverflow.com/questions/6666245
复制相似问题