【问题标题】:gnu parallel pipe sed - no input files errorgnu并行管道sed - 没有输入文件错误
【发布时间】:2021-04-29 17:10:14
【问题描述】:

我正在使用以下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 万行

【问题讨论】:

    标签: unix sed replace find gnu-parallel


    【解决方案1】:

    你需要-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
    

    要了解原因:

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

    【讨论】:

    • 使用选项 -q--lb 就可以了。谢谢@Ole Tange!
    猜你喜欢
    • 2015-06-18
    • 1970-01-01
    • 2020-05-06
    • 2017-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-14
    相关资源
    最近更新 更多