Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从管道grep输出读取python中的STDIN_Python_Linux_Bash_Grep - Fatal编程技术网

如何从管道grep输出读取python中的STDIN

如何从管道grep输出读取python中的STDIN,python,linux,bash,grep,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

假设我有一个文本文件,
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脚本中的所有行?

正如@AshwiniChaudhary所建议的:

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

对于sys.stdin中的行:
谢谢@AshwiniChaudhary