Транслировать постоянно растущий файл по TCP/IP
-
24-10-2019 - |
Вопрос
У меня есть проект, над которым я работаю, где кусок аппаратного обеспечения производит выход, который постоянно записывается в текстовый файл. Что мне нужно сделать, так это транслировать этот файл, когда он записывается на простое соединение TCP/IP.
В настоящее время я пытаюсь это через Simple NetCat, но NetCat отправляет только часть файла, написанного во время выполнения. Это не продолжает отправлять остальное.
Прямо сейчас у меня есть сервер, прослушивающий NetCat на порту 9000 (просто для тестовых разворотов):
netcat -l 9000
И команда отправки:
netcat localhost 9000 < c:\OUTPUTFILE
Таким образом, в моем понимании NetCat на самом деле должен транслировать файл, но он просто останавливается, как только все, что существовало в начале выполнения, было отправлено. Это не убивает соединение, а просто прекращает отправку новых данных.
Как мне непрерывно транслировать данные?
Решение
Пытаться:
netcat localhost 9000 < tail -f /path/to/file
Другие советы
пытаться:
tail /var/log/mail.log -f | nc -C xxx.xxx.xxx.xxx 9000