gnu并行管道没有输入文件错误



我使用以下sed脚本执行一些查找和替换:

parallel --pipepart --block 1000M -a input.txt sed -ise 's/cat/dog/g; s/abc/xyz/g; s/def/22/g' > output.txt

但是我得到以下错误:

sed: no input files

我尝试删除-i选项,但结果仍然相同。

input.txt文件包含字母和数字的组合,大约包含3000万行

您需要-q:

parallel -q --pipepart --block 1000M -a input.txt sed -se 's/cat/dog/g; s/abc/xyz/g; s/def/22/g' > output.txt

要理解为什么:

  • https://www.gnu.org/software/parallel/man.html引用
  • https://www.gnu.org/software/parallel/parallel_design.html Always-running-commands-in-a-shell

--block -1 --lb可能比--block 1000M更有效。

相关内容

  • 没有找到相关文章

最新更新