我想通过stdin将数据传递到Python脚本进行后续处理。命令是:
tail -f /home/pi/ALL.TXT | python3 ./logcheck.py
Python代码是:
import sys
while 1:
if (sys.stdin.isatty()):
for line in sys.stdin:
print(line)
我希望代码连续监视stdin
,然后在收到时处理每一行。 tail
命令可以单独运行,但python脚本从不输出任何内容。
检查isatty()
似乎总是返回False
吗?
帮助!
答案 0 :(得分:0)
TTY是您使用常规终端时的情况-就像在外壳中打开python并键入
BASH>python
>>>from sys import stdin
>>>stdin.isatty() #True
在您的情况下,标准输入来自非tty
的东西。只需在not
语句中添加if
。