
Моя телефонная система (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
.