如何从pyped输出中读取python中的STDIN

时间:2015-05-20 08:25:36

标签: python linux bash grep

我们说我有一个文本文件,grep "@" file.txt返回:

(1) preparing corpus @ Tue Apr 28 20:19:31 CEST 2015
(1.0) selecting factors @ Tue Apr 28 20:19:31 CEST 2015
(1.2) creating vcb file /media/2tb/ccexp/phrase-mkcls-mgiza-10clusters/work.en-ru/training/corpus/en.vcb @ Tue Apr 28 20:19:31 CEST 2015

我想使用我的python脚本,使用类似的东西读取输出:

grep "@" file.txt | python process.py

我已经尝试了这个(process.py,但它只读取了第一行:

import sys
logfile = raw_input()
print raw_input()

[OUT]:

(1) preparing corpus @ Tue Apr 28 20:19:31 CEST 2015

如何读取管道传输到python脚本中的所有行?

1 个答案:

答案 0 :(得分:0)

正如@AshwiniChaudhary所说:

import sys
log = "".join([i for i in sys.stdin])
print log