Is that possible to use grep on a continuous stream?
What I mean is sort of a tail -f <file> command, but with grep on the output in order to keep only the lines that interest me.
I’ve tried tail -f <file> | grep pattern but it seems that grep can only be executed once tail finishes, that is to say never.
Turn on
grep‘s line buffering mode when using BSD grep (FreeBSD, Mac OS X etc.)It looks like a while ago
--line-buffereddidn’t matter for GNU grep (used on pretty much any Linux) as it flushed by default (YMMV for other Unix-likes such as SmartOS, AIX or QNX). However, as of November 2020,--line-bufferedis needed (at least with GNU grep 3.5 in openSUSE, but it seems generally needed based on comments below).