Греп с пробелами внезапно не работает

При выполнении grep например:

 $ tail -f apilog_2014.07.09.log | grep "HELLO" | grep "99999" 

Я получаю желаемый результат:

 12:22:35 server apache2: HELLO FRIEND 99999 12:22:35 server apache2: HELLO FRIEND 99999 12:22:35 server apache2: HELLO FRIEND 99999 

Однако, если я это сделаю:

 $ tail -f apilog_2014.07.09.log | grep "HELLO FRIEND" | grep "99999" 

Я ничего не получаю.

Мои настройки локали настроены на en_US.utf8 и я тестировал их с помощью [[:space:]] и с \s . Нет результатов. Сам файл является text/plain; charset=us-ascii text/plain; charset=us-ascii (проверено с file -bi apilog_2014.07.09.log ).

Сами файлы записываются с помощью rsyslog , если это какой-либо тип подсказки. Использование Ubuntu 12.04.4 LTS .

Есть что-то, чего я не хватает?

Как просили:

 $ grep "HELLO" apilog_2014.07.09.log | od -c 0000000 1 4 : 2 7 : 0 0 sofiac 0000020 arlos : APILOGH 0000040 ELLOFRIEND test 0000060 ing \n 1 4 : 3 1 : 4 5 sof 0000100 iacarlos : APIL 0000120 OGHELLOFRIEND 0000140 testing 6 3 9 0 3 \n 0000156 

ОБНОВЛЕНИЕ 14 июля 2014 г.

Ответить здесь: Grep с пробелами внезапно не работает

Связанный вопрос (такое же решение): Трубопровод от grep до awk не работает

One Solution collect form web for “Греп с пробелами внезапно не работает”

Нашел вопрос. Если вы вспомните в начале вопроса, я делаю в основном tail -f . Я ошибся, когда сказал, что выхода нет, я оставил консоль, и в итоге (через 10 минут) появился вывод. Здесь подробно объясняется

http://www.ateamsystems.com/tech-blog/grep-output-is-delayed-or-no-output-when-piping-or-using-multiple-grep-calls-with-pipes/

Почему косвенный символ влияет на время между выходами, остается загадкой, но после этого проблема в этой ссылке решила его.

В основном я редактировал мой .bashrc

alias grep="grep --color=auto --line-buffered"

И теперь я получаю желаемый результат.

Interesting Posts
Linux и Unix - лучшая ОС в мире.