
我的電話系統 (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
.