Странное конверра с cat'ом из последовательного порта
Имеется устройство на rs-485, от которого приходят данные в текстовом виде. Пытаюсь разобрать эти данные при помощи обычного конвеера с awk, но, если число фильтров в конвеере больше двух, то вместо фильтрованных данных получаю куй.
Т.е.
' }
или
Ещё работают, а
' | awk '{print $1}' }
не выводит уже ничего. Перенаправление в файл так же не работает. Даже не знаю в какую строну копать. Единственное, что могу подозревать, так это настройки последовательного порта, но и то не понятно, каким боком они могут так влиять на конвеер.
Буду признателен за любые предложения, которые заставят конвеер работать как надо.
Re: Странное конверра с cat'ом из последовательного порта
Первое что приходит в голову: буферизация. Если данные идут редко и небольшими порциями, такое может наблюдаться. Отключить буферизацию в общем случае непросто, предлагаю покопать в направлении unbuffer из пакета expect.
Re: Странное конверра с cat'ом из последовательного порта
>если вместо девайса подсунуть текстовый файл, что происходит?
То всё работает как и положено. Пробовал играться с настройками порта - эффекта ноль, пробовал от другого пользователя (оба могут читать/писать в/из /dev/ttyMI*) - та же картина.
Re: Странное конверра с cat'ом из последовательного порта
Первое что приходит в голову: буферизация. Если данные идут редко и небольшими порциями, такое может наблюдаться. Отключить буферизацию в общем случае непросто, предлагаю покопать в направлении unbuffer из пакета expect.
Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.0.9) Gecko/2009050519 Iceweasel/3.0.6 (Debian-3.0.6-1)