Обработка новых строк в файле

Рейтинг: 1Ответов: 1Опубликовано: 07.11.2014

Здравствуйте. Вот начало задания

Процесс «Генератор» передает информацию процессу «Обработчик» с помощью файла. Процесс «Обработчик» должен осуществлять следующую обработку новых строк в этом файле: если строка содержит единственный символ «+», то процесс обработчик...

Продолжение не важно. Вопрос в том, как обрабатывать новые строки. Знаю, что для слежения за файлом есть команда tail с флагом -f, но не могу её запихнуть в свой скрипт. Пробовал вот так

while read s
do
echo $s
done < $(tail -f "file.txt")

не получилось, выводятся пустые строки. Ещё пробовал вот так

while true
do
read s < "file.txt"
echo $s
done

в бесконечном цикле выводит первую строчку. Как правильно организовать считывание новых строчек?

Ответы

▲ 2Принят

Я тупой (( В примере задания написано, как его делать((

(tail -n 0 -f data.txt) |
while true; do
  read LINE;
  case $LINE in
    QUIT)
      echo "exit"
      killall tail
      exit
      ;;
    *)
      echo $LINE
      ;;
  esac
done