Добрый день! Может быть кто-нибудь из гуру подскажет как это сделать в Linux (сейчас у меня все это работает через Hyper terminal из под Win на последовательном порту).
Задачка следующая:
Есть телевонная станция (Siemens) которая через свой V24 порт выдает в реальном времени статистику по звонкам. Необходимо чтобы данная статистика выдавалась на экран компьютера (например на вторую консоль, как я понимаю каким-то образом сделать перенаправление вывода сообщений приходящий с com-порта на консоль) и одновременно записывалась в какой-либо файл на диске для последующего анализа(с помощью cron я надеюсь самостоятельно потом делать ротацию файлов). При этом нужно обеспечить автоматический запуск данного приложения без необходимости логиниться на данной консоли, т.е. в случае перезагрузки компьютера он автоматически должен начинать прием и вывод инф-ии на консоль и в файл.
Terminal HOWTO уже почитал, но там в основном о том как зайти в Линукс машину через com порт, а не наоборот. Если есть дока где-то еще - не сочтите за труд, ткните носом в нее или подскажите.... Заранее спасибо!
думаю тебе надо смотреть в сторону /dev/ttyvb
будет что то типа
1. прога собра и записи ситатики
2. tail -f DATA.file > /dev/ttyvb
Спасибо за ответ, хотя,если честно, не совсем понял суть предлагаемого решения.
Спациальной проги для сбора данной статистики с телефреерй станции нет, просто сама станция умеет выдавать эту информацию в порт и задача принять ее на консоль и в файлик. На сколько я понимаю tail -f DATA.file > /dev/ttyS0 даст перенаправление всего, что появляется в файле DATA.file в последовательный порт, а мне необходимо наоборот каким-то образом принимать на последовательном порту и перенаправлять в файл и на экран консоли.
я не писал
tail -f DATA.file > /dev/ttyS0
я писал
tail -f DATA.file > /dev/ttyvb
эта консоль по alt+f12 во freebsd
вот на нее валится все что приходит в это файл
вот а написать прогу которая будет читать с порта в файл все что в нем есть 15мин на перле ну может 20 мин на SH
и делов
Я понял идею... спасибо.
У меня Debian Linux и данная комбинация просто будет перенаправляться на /dev/tty2, а не как в твоем варианте (кстати я попробовал - все работает, спасибо еще раз).
Но самая-то тонкость в том как заставить комп после загрузки сразуже передавать данные с com-порта (/dev/ttyS0 в Linux, если не ошибаюсь) в этот файлик.
На счет програмирования на перле или шелл - я пока не могу, к сожелению, могу пока только примитивные скриптики в /etc/init.d/
а что тебе мешает вставить все в загрузку
сохраниь процесс в памяти и радоватюся ?
Вот и спрашиваю ЧТО вставить-то...
Если б знал то именно так бы и сделал.
Нашел решение!Shadow, спасибо за помощь, вернее за идею. В общем работает это так (при помощи стандартных средств Linux:
tee < /dev/ttyS0 /var/log/pbx.log
Вывод осуществляется на стандартную консоль (можно и перенаправить) и одновременно записывается в файл pbx.log
С добавлением опции '-а' будет не перезаписавать файл, а добавлять строки вывода в конец файла. Ну и конечно же можно запустить это в background и поместить все это в /etc/rcS.d для автостарта... Сейчас буду разбираться как теперь к этому прикрутить crond для ротации и автоматической обработки log-файла.