小编Iya*_*rek的帖子

使用 GNU sed 和 GNU find 时如何加速替换?

我有由数百个目录组成的数值模拟结果;每个目录包含数百万个文本文件。

wavelength;我需要用“ ”替换字符串“ wavelength_bc;”,所以我尝试了以下两种方法:

find . -type f -exec sed -i 's/wavelength;/wavelength_bc;/g' {} \;
Run Code Online (Sandbox Code Playgroud)

find . -type f -exec sed -i 's/wavelength;/wavelength_bc;/g' {} +
Run Code Online (Sandbox Code Playgroud)

不幸的是,上面的命令需要很长时间才能完成(超过 1 小时)。

我想知道如何利用我的机器上的核心数量 (8) 来加速上述命令?

我正在考虑与标志xargs一起使用-P。我担心这会损坏文件;所以我不知道这是否安全?

总之:

  • sed使用 with 时如何加速替换find
  • xargs -P使用并行运行安全吗?

谢谢

linux gnu sed find xargs

4
推荐指数
1
解决办法
73
查看次数

标签 统计

find ×1

gnu ×1

linux ×1

sed ×1

xargs ×1