我正在编写两个非常简单的 Python 程序,并尝试将它们与 Linux (CentOS) 上的管道连接起来。第一个(称为 runner)只是打印,第二个(称为 capture)应该从 runner 程序中读取这些打印语句并自己打印它们。但是当我运行python runner.pyc | tee capture.pyc时,我的命令行没有任何反应。它只是挂在某个过程上,并没有结束。
我已经阅读了一些关于管道的资料,但找不到与我的问题相关的内容。
下面的代码包括一些打印语句,只是为了验证哪个文件正在生成打印语句,并在 runner.py 中休眠 3 秒,这样我就不会生成过长的输出。
runner.py 代码:
import time
x = 0;
while True:
print(x)
x = x + 1
print("running file")
time.sleep(3)
捕获.py代码:
import sys
import time
while True:
line = sys.stdin.readline()
print(line)
print("capture file")
有人可以向我解释我做错了什么或指出我正确的方向吗?
相关分类