我的电话系统 (fritzbox 7170) 在 telnet 上输出日志数据,需要某种形式的脚本来启动它crontab
,捕获所有数据并将任何进入日志文件的内容立即写入日志文件。
它还必须能够检测任何断开连接,因为它必须尽快重新连接(假设在几秒钟内),这样就不会丢失呼叫。
日志文件将用于监控线路、发送有关所有呼叫的电子邮件警报、更改我网站上的线路状态等等。现在它可以在 Windows 上运行,但不能在我的 Debian 盒子 (RaspberryPi) 上运行。
在 Windows 上它看起来像这样; (每 10 分钟运行一次)
taskkill /f /im telnet.exe
copy /B log.old+log.txt log.old
sleep 1
del log.txt /f
telnet.exe -flog.txt fritz.box 1012
答案1
好的,要从框中获取日志,您可能只需要执行以下操作
netcat fritz.box 1012 >> log.txt
您的发行版可能会命名为 netcat 程序nc
。
您上面发布的 Windows 脚本是错误的,因为它会杀死所有 telnet 实例,而且是多余的,因为它所做的只是将 log.txt 附加到 log.old。
如果您想要日志的最新部分,只需运行tail -100 log.txt
.