Как записать в файл и, в то время как файл все еще пишется, считайте и проанализируйте его содержание с помощью сценария оболочки?

Существует нечетное поведение с веб-интерфейсом особенно. Если Вы введете свое имя пользователя и пароль и нажмете Enter, то поля будут очищены, и похоже, что Ваш пароль не был принят. При нажатии на фактическую кнопку отправки, Вы сможете войти в систему. Я закончил тем, что сбросил целое устройство прежде, чем понять это сам.

2
задан 24 February 2011 в 19:37
4 ответа

Я на самом деле решил использование задач tail и вопрос о Переполнении стека Конечный хвост-f запустился в сценарии оболочки.

# Solution
($(command) > ${FILE}) &
tail -f --pid=$! ${FILE} | while read line
do
      echo $line
      # Can parse each line output here
      # Example: send errors to log file
      if echo $line | grep -qi "error"
      then
            echo $line >> ${LOG}
      fi
done

Спасибо всем за справку.

1
ответ дан 3 December 2019 в 13:31
  • 1
    Вы, вероятно, don' t хотят знак доллара в начале строки you' фоновая обработка ре. –  Paused until further notice. 18 March 2010 в 02:16
  • 2
    Отредактированный, чтобы сделать точно, что (у меня был знак доллара в неправильном месте). Спасибо за определение его. –  Isabelle 22 March 2010 в 13:21

хвост-f будет следовать за файлом как за ним создаваемый.

попробуйте его файлом журнала.

хвост-f/var/log/messages, например.

Вы будете видеть файл журнала, произведенный к консоли, поскольку они появляются в журнале.

0
ответ дан 3 December 2019 в 13:31

Каналы, Мишень и Хвост (мишень, являющаяся в основе вопроса, поскольку, это копировало стандартный вывод. Если бы sed были файлом, Вы использовали для парсинга данных, пример был бы:

kbrandt@k$ a=0; while [[ a -lt 10 ]]; do
> echo foo; a=$(( $a + 1));
> done | tee -a unprocessed | sed 's/foo/bar/' > processed
kbrandt@kbrandt$ cat unprocessed 
foo
foo
foo
...
kbrandt@kbrandt$ cat processed 
bar
bar
...

Можно затем выполнить его как задание и хвост, обработанный, или просто tail -f processed в другом окне.

0
ответ дан 3 December 2019 в 13:31

Используйте хвост и канал это в Ваш синтаксический анализатор.

0
ответ дан 3 December 2019 в 13:31

Теги

Похожие вопросы