为了账号安全,请及时绑定邮箱和手机立即绑定

我如何使用Python在运行时检测到Teraterm登录中出现的特殊单词

我如何使用Python在运行时检测到Teraterm登录中出现的特殊单词

慕的地6264312 2021-03-29 07:33:05
我将teraterm用作客户端控制台,并将控制台日志保存在某处。当我打开Teraterm并在COM1串行端口(与设备连接)上进行操作时,它将在屏幕上打印消息并同时写入日志文件,如果我想看日志,可以检测是否出现特殊的单词。我以为如果使用“打开”方法,只能在打开时间获取全部内容,而不能在打开时间后获取第三期写的最新内容吗?
查看完整描述

3 回答

?
饮歌长啸

TA贡献1951条经验 获得超3个赞

定期检查文件大小:


import os

import time


log_path = '/tmp/com1.log'

special_word = 'magic'


lastsize = 0

while 1:

    if os.path.exists(log_path) and os.path.getsize(log_path) > lastsize:

        with open(log_path) as f:

            f.seek(lastsize)

            for line in f:

                if special_word in line:

                    print('Special word found')

            lastsize = f.tell()

    time.sleep(1)



查看完整回答
反对 回复 2021-04-02
?
陪伴而非守候

TA贡献1757条经验 获得超8个赞

您可以使用teraterm的宏语言,它允许开发人员扩展teraterm的行为。


对于您的特定情况,Teraterm的宏语言提供了wait系列功能,以等待特定的单词(或)模式序列。请注意,teraterm宏语言不是python,但是它具有自己的语法。


; wait for special world 'hello'

wait 'hello'

if result == 0 goto your_own_logic

还有其他方法,如果您想拥有仅适用于python的解决方案。您可以使用pyserial python库与串行端口连接,而不是使用teraterm与串行端口连接。


查看完整回答
反对 回复 2021-04-02
  • 3 回答
  • 0 关注
  • 247 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号