System Administration & Network Administration
bash rhel6 grep pipe tail
Updated Sun, 08 May 2022 08:21:09 GMT

Can I filter output from `tail` with the `-f` flag?

I'd like to tail -f the output of access_log on RHEL 6.8 but pipe and grep that output to act as a filter. Is there such an option?

That is I'd like live output from:

# tail -f error_log | grep <<ON.THIS.IP.ADDY>>

Currently I'm doing something akin to this, but it's clunky:

watch -n 5 'tail -n 10 access_log | grep <<ON.THIS.IP.ADDY>>'


I just did a tail -f <nginx-access.log> | grep <ip> and as expected new lines showed up regularly.

What happens when you try? Could it be hat your grep buffers (I think i've seen that), in that case it might help to add --line-buffered to the grep.