【问题标题】:xargs -P messes stdoutxargs -P 弄乱标准输出
【发布时间】:2015-01-28 03:47:14
【问题描述】:

我试图实现并行查找以减少大FS遍历时间:

find $1 -mindepth 2 -maxdepth 2 -type d | xargs -P5 -n1 find

效果很好,但是五个(-P5)“查找”进程并行运行,它们的输出混乱,所以字符串有时会分开。如何摆脱这种行为? 应该是 xargs 的常见问题,但似乎没有人使用它的并行功能。

【问题讨论】:

  • 尝试使用:find $1 -mindepth 2 -maxdepth 2 -type d -print0 | xargs -0 -P5 -n1 查找
  • 好点,但是如何强制所有进程写入单独的文件?

标签: shell find stdout xargs


【解决方案1】:

您可以使用写入单独的文件

find $1 -mindepth 2 -maxdepth 2 -type d -print0 | xargs -0 -P5 -n1 -I{} sh -c 'find "{}" > "/tmp/{}.dirlist.txt"'

然后在最后cat他们在一起。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-09
    • 2011-07-01
    • 1970-01-01
    • 2015-09-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多