实时解析程序输出

随机人42

我有一个程序,该程序执行一些繁重的处理(ML算法),并将大量数据(读取GB的纯文本)写入标准输出。在某些特定情况下,我只需要输出的一小部分,但是现在我要保存一个(巨大的)文本文件,然后解析其中的行以获取数据。

虽然完全有效,但我的方法非常有效。有没有一种方法可以避免生成如此大的文件(因为大多数数据无论如何都会被删除),并且可以逐行进行动态解析。

执行:

./myProgram model test > myOutput

myOutput内容(百万行):

0, blah blah blah thousand of more blahs -> [ I care data inside brackets ]
0, blah blah blah thousand of more blahs -> [ I care data inside brackets ]
....

我认为最好的选择是使用unix管道链接结果,但是我不知道如何逐行发送数据到python或java应用程序来解析它。

./myProgram model test | <now what>
费尔南多

要在脚本中读取和写入数据,您只想用于过滤数据,只需在标准输入/输出之间进行读写即可。

./myProgram model test | ./filter.py > myOutput

filter.py:

import sys

for line in sys.stdin:
    if some_condition:
        sys.stdout.write(line)

如果只需要在数据中包含某些模式的条件而您不需要脚本,则可以简单地使用grep以下行进行过滤:

 ./myProgram model test | grep 'interesting_pattern' > myOutput

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

多线程程序(CompletionService)中实时完成线程的实时输出

来自分类Dev

使用php读取python程序的实时输出

来自分类Dev

解析PHP中的程序输出

来自分类Dev

解析PHP中的程序输出

来自分类Dev

从子程序到pyQT小部件的stdout的实时输出

来自分类Dev

从子程序到pyQT小部件的stdout的实时输出

来自分类Dev

实时捕获Jython输出

来自分类Dev

实时输出重定向

来自分类Dev

cURL实时输出CLI

来自分类Dev

实时捕获Jython输出

来自分类Dev

php实时输出system()

来自分类Dev

实时更改bjobs输出

来自分类Dev

实时解析,JS更新

来自分类Dev

Bash:将程序输出的每一行重定向到实时文件

来自分类Dev

如何在Delphi中实时读取cygwin程序的命令行输出?

来自分类Dev

从命令行运行的 PyQt 程序不实时路由控制台输出

来自分类Dev

Python-如何解析smartctl程序输出?

来自分类Dev

Java程序解析使用Pig脚本生成的组的输出

来自分类Dev

实时音频处理程序

来自分类Dev

实时音频处理程序

来自分类Dev

实时 Python 程序

来自分类Dev

实时修改Shell标准输出

来自分类Dev

实时修改`tail -f`输出

来自分类常见问题

子流程命令的实时输出

来自分类Dev

Ruby:打印系统实时输出?

来自分类Dev

libsuperuser实时获取命令输出

来自分类Dev

告诉nohup实时写入输出

来自分类Dev

nodejs-过滤实时输出

来自分类Dev

实时显示子进程输出