加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

unix – xargs –max-proc每个proc的拆分输出?

发布时间:2020-12-15 18:27:46 所属栏目:安全 来源:网络整理
导读:我最近发现了xargs –max-procs功能. 如何通过proc拆分命令的输出?我应该只创建一个mycommand –logfile $LOGFILE,还是可以从xargs本身创建它? 一个例子(对于womble): 假设我有脚本myprocessor.sh和一个文件列表.他们可以按任何顺序进行,但我想保持每个单
我最近发现了xargs –max-procs功能.

如何通过proc拆分命令的输出?我应该只创建一个mycommand –logfile $LOGFILE,还是可以从xargs本身创建它?

一个例子(对于womble):

假设我有脚本myprocessor.sh和一个文件列表.他们可以按任何顺序进行,但我想保持每个单独的日志记录,然后:

find $MY_FILE_TREE --print0 | xargs --null --max-procs 3 --max-args 1 --no-run-if-empty myprocess.sh

可能是我想要运行的并行工作.如果myprocessor.sh很讨厌,那么我希望能够将每个调用打印到不同的日志中.否则每个的stdout是相同的,日志会混乱.

您可以通过在shell中运行xargs命令来实现此目的 – 这将允许您重定向输出 – 如下所示:
find blah -type f | xargs -I{} -P 4 -n 1 sh -c 'yourcommand --input {} > {}.output'

…你可能不得不稍微调整一下 – xargs用它正在处理的项目/文件替换{}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读